GNOME Bugzilla – Bug 651785
eex doesn't explicitly link against ical when needed
Last modified: 2011-09-08 16:38:27 UTC
Created attachment 189158 [details] [review] link with libical This was found while building eex 3.0.0/3.0.2 on Ubuntu oneiric. ICAL appears to be required by libcamelexchange during build; yet it's not tested for in configure nor added to LIBADD for libcamelexchange. Excerpt from the build: libtool: link: gcc -shared -fPIC -DPIC .libs/libcamelexchange_la-camel-exchange-folder.o .libs/libcamelexchange_la-camel-exchange-provider.o .libs/libcamelexchange_la-camel-exchange-journal.o .libs/libcamelexchange_la-camel-exchange-search.o .libs/libcamelexchange_la-camel-exchange-store.o .libs/libcamelexchange_la-camel-exchange-summary.o .libs/libcamelexchange_la-camel-exchange-transport.o .libs/libcamelexchange_la-camel-exchange-utils.o .libs/libcamelexchange_la-mail-utils.o -Wl,-rpath -Wl,/home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/server/lib/.libs -Wl,-rpath -Wl,/home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/server/storage/.libs -Wl,-rpath -Wl,/home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/tools/.libs -Wl,-rpath -Wl,/usr/lib/evolution-exchange/3.0 ../server/lib/.libs/libexchange.so ../server/storage/.libs/libexchange-storage.so ../tools/.libs/libevolution-exchange-shared.so -L/usr/lib/evolution/3.0 -leutil -lcamel-provider-1.2 -lunique-3.0 -lgtkhtml-editor-4.0 -lcamel-1.2 -ledataserver-1.2 /usr/lib/x86_64-linux-gnu/libsqlite3.so -lnss3 -lnssutil3 -lsmime3 -lssl3 /usr/lib/libxml2.so -lsoup-2.4 -lplds4 -lplc4 -lnspr4 -lpthread -ldl -lgtkhtml-4.0 /usr/lib/libgtk-3.so /usr/lib/libenchant.so /usr/lib/libgconf-2.so /usr/lib/libgdk-3.so /usr/lib/x86_64-linux-gnu/libatk-1.0.so /usr/lib/x86_64-linux-gnu/libcairo-gobject.so /usr/lib/x86_64-linux-gnu/libgio-2.0.so /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so -lgdk_pixbuf-2.0 -lm /usr/lib/x86_64-linux-gnu/libcairo.so /usr/lib/x86_64-linux-gnu/libpango-1.0.so /usr/lib/x86_64-linux-gnu/libfreetype.so -lfontconfig /usr/lib/x86_64-linux-gnu/libgobject-2.0.so /usr/lib/x86_64-linux-gnu/libgthread-2.0.so /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so -lrt /usr/lib/x86_64-linux-gnu/libglib-2.0.so -lldap -llber -lresolv -lnsl -O2 -O2 -Wl,--no-undefined -Wl,-Bsymbolic-functions -pthread -Wl,-R/usr/lib/evolution/3.0 -pthread -Wl,-soname -Wl,libcamelexchange.so -o .libs/libcamelexchange.so .libs/libcamelexchange_la-mail-utils.o: In function `mail_util_demangle_meeting_related_message': /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:336: undefined reference to `icalparser_parse_string' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:340: undefined reference to `icalcomponent_get_first_component' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:346: undefined reference to `icalcomponent_get_first_property' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:348: undefined reference to `icalcomponent_get_next_property' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:352: undefined reference to `icalproperty_get_value_as_string_r' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:402: undefined reference to `icalproperty_remove_parameter_by_kind' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:403: undefined reference to `icalparameter_new_cn' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:403: undefined reference to `icalproperty_add_parameter' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:404: undefined reference to `icalproperty_remove_parameter_by_kind' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:405: undefined reference to `icalparameter_new_sentby' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:405: undefined reference to `icalproperty_add_parameter' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:416: undefined reference to `icalproperty_new_x' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:417: undefined reference to `icalproperty_set_x_name' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:418: undefined reference to `icalcomponent_add_property' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:425: undefined reference to `icalcomponent_as_ical_string_r' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:439: undefined reference to `icalcomponent_remove_component' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:440: undefined reference to `icalcomponent_free' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:442: undefined reference to `icalcomponent_free' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:374: undefined reference to `icalcomponent_get_first_property' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:379: undefined reference to `icalproperty_get_value_as_string_r' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:389: undefined reference to `icalproperty_set_organizer' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:363: undefined reference to `icalproperty_remove_parameter_by_kind' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:364: undefined reference to `icalparameter_new_cn' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:364: undefined reference to `icalproperty_add_parameter' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:365: undefined reference to `icalproperty_remove_parameter_by_kind' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:366: undefined reference to `icalparameter_new_sentby' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:366: undefined reference to `icalproperty_add_parameter' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:374: undefined reference to `icalcomponent_get_first_property' /home/mtrudel/Projects/build-area/evolution-exchange-3.0.2/camel/mail-utils.c:342: undefined reference to `icalcomponent_free' collect2: ld returned 1 exit status make[3]: *** [libcamelexchange.la] Erreur 1
Thanks for a bug report. libical is usually brought in with libecal, whose .pc file has set Requires: libical >= 0.43 libedataserver-1.2 gio-2.0 I'm about to attach a slightly different patch, but because I do not see the issue myself, I would like to ask you to test this before it'll be committed.
Created attachment 194225 [details] [review] eex patch for evolution-exchange; Different approach for the same. Please test it, and if it'll not work, I'll take your patch. Thanks in advance.
Yup, it appears to work. Thanks!
Thanks, I just committed it: Created commit a7188a3 in eex master (3.1.92+)