GNOME Bugzilla – Bug 710039
camel-pop3-store.c:205: undefined reference to `camel_network_service_starttls'
Last modified: 2013-11-21 01:10:37 UTC
I can't build e-d-s anymore on Fedora 19 (using jhbuild). This seems to be caused by https://git.gnome.org/browse/evolution-data-server/commit/camel/providers/pop3?id=c16ad8de345366f78213df36520b191e203ffa43 though I have no idea why. camel_network_service_starttls ought to be defined in libcamel-1.2.la which is clearly in the link command (not that I understand libtool at all). /bin/sh ../../../libtool --mode=install /home/mcatanzaro/.local/bin/install-check libcamelpop3.la '/home/mcatanzaro/jhbuild/install/_jhbuild/root-evolution-data-server/home/mcatanzaro/jhbuild/install/lib/evolution-data-server/camel-providers' libtool: install: warning: relinking `libcamelpop3.la' libtool: install: (cd /home/mcatanzaro/jhbuild/src/evolution-data-server/camel/providers/pop3; /bin/sh /home/mcatanzaro/jhbuild/src/evolution-data-server/libtool --silent --tag CC --mode=relink gcc -Wall -Wextra -Wdeprecated-declarations -Werror-implicit-function-declaration -Wformat-security -Winit-self -Wmissing-declarations -Wmissing-include-dirs -Wmissing-noreturn -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings -Wdeclaration-after-statement -Wno-missing-field-initializers -Wno-sign-compare -Wno-unused-parameter -Wnested-externs -fno-strict-aliasing -Wno-error=deprecated-declarations -O0 -ggdb3 -avoid-version -module -L/home/mcatanzaro/jhbuild/install/lib -Wl,--no-undefined -o libcamelpop3.la -rpath /home/mcatanzaro/jhbuild/install/lib/evolution-data-server/camel-providers libcamelpop3_la-camel-pop3-engine.lo libcamelpop3_la-camel-pop3-folder.lo libcamelpop3_la-camel-pop3-provider.lo libcamelpop3_la-camel-pop3-settings.lo libcamelpop3_la-camel-pop3-stream.lo libcamelpop3_la-camel-pop3-store.lo ../../../camel/libcamel-1.2.la -Wl,--export-dynamic -pthread -L/home/mcatanzaro/jhbuild/install/lib -lgio-2.0 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lssl3 -lsmime3 -lnss3 -lnssutil3 -lplds4 -lplc4 -lnspr4 -lpthread -ldl -lsqlite3 -lz -inst-prefix-dir /home/mcatanzaro/jhbuild/install/_jhbuild/root-evolution-data-server) .libs/libcamelpop3_la-camel-pop3-store.o: In function `connect_to_server': /home/mcatanzaro/jhbuild/src/evolution-data-server/camel/providers/pop3/camel-pop3-store.c:205: undefined reference to `camel_network_service_starttls' collect2: error: ld returned 1 exit status libtool: install: error: relink `libcamelpop3.la' with the above command before installing it make[5]: *** [install-camel_providerLTLIBRARIES] Error 1
jhbuild's fault, happens frequently. Just uninstall evolution-data-server and rebuild.
Unfortunately this happens invariably, even after 'jhbuild run make uninstall' and 'git clean -xfd'. I don't understand how jhbuild could be at fault, but it does work fine when I build without jhbuild.
I think it is linking against the previously-installed version of the library, similar to the issue discussed at [1]. My Autofoo is weak, so I'm still trying to figure out what exactly is wrong. [1] http://lists.debian.org/debian-devel/2008/10/msg00645.html
Both jhbuild and evolution-data-server are exonerated. This is an open libtool bug: http://savannah.gnu.org/support/?107416 Unfortunately I was not able to find a non-sucky workaround. While 'jhbuild run make uninstall' does not help, 'jhbuild uninstall evolution-data-server' does.