On Jaunty icu-config --ldflags returns "-lm -L/usr/lib -licui18n -licuuc -licudata -lm" On Fedora: -licui18n -licuuc -licudata -lpthread -lm I had link errors caused by the presence of -L/usr/lib before -L/myprefix (where most of my webkit deps are installed( in libwebkit-1.0.la. Changing the call to icu-config to icu-config --ldflags-libsonly fixed the issue for me, thanks to Xan!
Created attachment 39913 [details] proposed patch
Hi Philippe. What's the error? I'm using Debian and I have the same --ldflags as Ubuntu but no link errors. Can you post the errors here? Also in the future if your patch is for review, please mark it as r? so it will end up in the review queue. Please see http://webkit.org/coding/contributing.html for more info.
(In reply to comment #2) > Hi Philippe. What's the error? I'm using Debian and I have the same --ldflags > as Ubuntu but no link errors. Can you post the errors here? The error (as he pasted it to me) is: libtool: link: gcc -fno-strict-aliasing -I./JavaScriptCore/ForwardingHeaders -I./WebKit/gtk -I./WebKit/gtk -Wall -W -Wcast-align -Wchar-subscripts -Wreturn-type -Wformat -Wformat-security -Wno-format-y2k -Wundef -Wmissing-format-attribute -Wpointer-arith -Wwrite-strings -Wno-unused-parameter -Wno-parentheses -fno-exceptions -fvisibility=hidden -pthread -I/home/pnormand/gst/jhbuild/install/include/glib-2.0 -I/home/pnormand/gst/jhbuild/install/lib/glib-2.0/include -I/home/pnormand/gst/jhbuild/install/include/gtk-2.0 -I/home/pnormand/gst/jhbuild/install/lib/gtk-2.0/include -I/home/pnormand/gst/jhbuild/install/include/atk-1.0 -I/home/pnormand/gst/jhbuild/install/include/cairo -I/home/pnormand/gst/jhbuild/install/include/pango-1.0 -I/home/pnormand/gst/jhbuild/install/include/glib-2.0 -I/home/pnormand/gst/jhbuild/install/lib/glib-2.0/include -I/home/pnormand/gst/jhbuild/install/include/pixman-1 -I/home/pnormand/gst/jhbuild/install/include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/home/pnormand/gst/jhbuild/install/include/libsoup-2.4 -I/home/pnormand/gst/jhbuild/install/include/glib-2.0 -I/home/pnormand/gst/jhbuild/install/lib/glib-2.0/include -I/usr/include/libxml2 -O2 -o Programs/unittests/testloading WebKit/gtk/tests/Programs_unittests_testloading-testloading.o -pthread ./.libs/libwebkit-1.0.so -L/usr/lib -L/home/pnormand/gst/jhbuild/install/lib -lgobject-2.0 -lgthread-2.0 -lglib-2.0 /home/pnormand/gst/jhbuild/install/lib/libenchant.so /home/pnormand/gst/jhbuild/install/lib/libgailutil.so -lXext -lXinerama -lXrandr -lXcursor -lXcomposite -lXdamage -lXfixes /home/pnormand/gst/jhbuild/install/lib/libgstvideo-0.10.so /home/pnormand/gst/jhbuild/install/lib/libgstbase-0.10.so /home/pnormand/gst/jhbuild/install/lib/libgstreamer-0.10.so -ljpeg /home/pnormand/gst/jhbuild/install/lib/libxslt.so -lsqlite3 -licui18n -licuuc -licudata -lXt -lSM /home/pnormand/gst/jhbuild/install/lib/libgtk-x11-2.0.so /home/pnormand/gst/jhbuild/install/lib/libgdk-x11-2.0.so /home/pnormand/gst/jhbuild/install/lib/libatk-1.0.so /home/pnormand/gst/jhbuild/install/lib/libgdk_pixbuf-2.0.so /home/pnormand/gst/jhbuild/install/lib/libpangocairo-1.0.so /home/pnormand/gst/jhbuild/install/lib/libpangoft2-1.0.so /home/pnormand/gst/jhbuild/install/lib/libcairo.so /home/pnormand/gst/jhbuild/install/lib/libpixman-1.so -lpng12 -lXrender -lX11 /home/pnormand/gst/jhbuild/install/lib/libpango-1.0.so -lm /home/pnormand/gst/jhbuild/install/lib/libfontconfig.so /usr/lib/libfreetype.so -lexpat /home/pnormand/gst/jhbuild/install/lib/libsoup-2.4.so /home/pnormand/gst/jhbuild/install/lib/libgthread-2.0.so -lpthread -lrt /usr/lib/libxml2.so /usr/lib/libgnutls.so /usr/lib/libtasn1.so -lz /lib/libgcrypt.so /home/pnormand/gst/jhbuild/install/lib/libgio-2.0.so -lresolv /home/pnormand/gst/jhbuild/install/lib/libgobject-2.0.so /home/pnormand/gst/jhbuild/install/lib/libgmodule-2.0.so -ldl /home/pnormand/gst/jhbuild/install/lib/libglib-2.0.so -pthread -Wl,-rpath -Wl,/home/pnormand/gst/jhbuild/build/WebKit/.libs -Wl,-rpath -Wl,/home/pnormand/gst/jhbuild/install/lib -Wl,-rpath -Wl,/home/pnormand/gst/jhbuild/install/lib /home/pnormand/gst/jhbuild/install/lib/libsoup-2.4.so: undefined reference to `g_main_context_push_thread_default' /home/pnormand/gst/jhbuild/install/lib/libgio-2.0.so: undefined reference to `g_mkstemp_full' /home/pnormand/gst/jhbuild/install/lib/libgio-2.0.so: undefined reference to `g_byte_array_unref' /home/pnormand/gst/jhbuild/install/lib/libgtk-x11-2.0.so: undefined reference to `g_array_get_element_size' /home/pnormand/gst/jhbuild/install/lib/libgio-2.0.so: undefined reference to `g_hostname_to_ascii' /home/pnormand/gst/jhbuild/install/lib/libgio-2.0.so: undefined reference to `g_byte_array_get_type' /home/pnormand/gst/jhbuild/install/lib/libgio-2.0.so: undefined reference to `g_error_new_valist' /home/pnormand/gst/jhbuild/install/lib/libgio-2.0.so: undefined reference to `g_ptr_array_new_with_free_func' /home/pnormand/gst/jhbuild/install/lib/libsoup-2.4.so: undefined reference to `g_main_context_pop_thread_default' /home/pnormand/gst/jhbuild/install/lib/libgtk-x11-2.0.so: undefined reference to `g_array_unref' /home/pnormand/gst/jhbuild/install/lib/libgio-2.0.so: undefined reference to `g_array_get_type' /home/pnormand/gst/jhbuild/install/lib/libgio-2.0.so: undefined reference to `g_main_context_get_thread_default' ./.libs/libwebkit-1.0.so: undefined reference to `g_mapped_file_unref' /home/pnormand/gst/jhbuild/install/lib/libgio-2.0.so: undefined reference to `g_hostname_is_non_ascii' /home/pnormand/gst/jhbuild/install/lib/libsoup-2.4.so: undefined reference to `g_hostname_is_ip_address' collect2: ld returned 1 exit status make[1]: *** [Programs/unittests/testloading] Error 1 make[1]: Leaving directory `/home/pnormand/gst/jhbuild/build/WebKit' make: *** [all] Error 2 > > Also in the future if your patch is for review, please mark it as r? so it will > end up in the review queue. Please see > http://webkit.org/coding/contributing.html for more info.
And the issue comes here: -L/usr/lib -L/home/pnormand/gst/jhbuild/install/lib -lgobject-2.0 -lgthread-2.0 -lglib-2.0 -L/usr/lib coming first, the system will first try to get the libraries from there, succeed, and use the wrong ones when linking.
I see the same problem on archlinux 64bit and the fix suggested by Philippe solves it for me.
Comment on attachment 39913 [details] proposed patch OK, let's do this :)
Landed in r48636, closing.