GNOME Bugzilla – Bug 728687
evolution-source-registry 3.12.0 crash at startup
Last modified: 2014-04-23 14:08:22 UTC
Here is the backtrance with G_DEBUG=fatal-warnings. Without fatal warnings it continues a bit further printings logs of wanrings and ends up crashing as well. (evolution-source-registry:6744): GLib-GObject-WARNING **: cannot register existing type 'EDBusObject' Program received signal SIGTRAP, Trace/breakpoint trap. 0xb71cf40a in g_logv () from /lib/i386-linux-gnu/libglib-2.0.so.0 (gdb) bt
+ Trace 233506
Hm, after rebuilding from source master and 3.12.0 tag, it works fine. So it's the fault of our packaging somehow. Closing as invalid, I'll reopen if I get evidence that it's upstream fault.
Here my current guess: EDBusObject is generated from gdbus-codegen and gets built into the internal libedbus-private.la I think that library ends up being statically linked twice inside evolution-source-registry, so it has 2 e_dbus_object_get_type() symboles that will both register the same GType. I never completely understood the difference between LIBADD and LDADD, but I feel that the problem is that libebackend/Makefile.am uses libebackend_1_2_la_LIBADD instead of libebackend_1_2_la_LDADD.
*** This bug has been marked as a duplicate of bug 594473 ***
Thanks for a bug report. There didn't change anything in linking with libedbus-private.la, at least I'm not aware of anything between 3.12.0 and 3.10.4. I suspect it's some linker flag causing the trouble, because I do not see it, neither in 3.10.4. I use Fedora here. I guess we talk about 3.10.4, right? You didn't set the version, neither mentioned it in the comments, except of the 3.12.0 tag being used with your local build.
(In reply to comment #3) > > *** This bug has been marked as a duplicate of bug 594473 *** Right, that might be The Flag.