GNOME Bugzilla – Bug 597713
taglib fails to compile with the GNU gold linker
Last modified: 2009-10-08 11:15:23 UTC
Using the GNU gold linker instead of GNU ld causes the following output:- CC gsttaglibmux.o CXX gstid3v2mux.o CXX gstapev2mux.o LINK libgsttaglib.la ld: fatal error: -shared and -r are incompatible
Could you post the output of make V=1 (when in ext/taglib)? Any idea how to fix it?
/bin/sh ../../libtool --tag=CXX --tag=disable-static --mode=link /bin/sh /tmp/gst-plugins-good-0.10.16/common/shave cxx g++ -pthread -I/home/chaz/Libraries/gstreamer/0.10.25/include/gstreamer-0.10 -I/home/chaz/Libraries/glib/2.18.4/include/glib-2.0 -I/home/chaz/Libraries/glib/2.18.4/lib/glib-2.0/include -I/home/chaz/Libraries/libxml2/2.7.3/include/libxml2 -I../../gst-libs -I../../gst-libs -Wall -I/usr/include/taglib -Wno-attributes -I/home/chaz/Programs/include -I/home/chaz/Libraries/include -module -avoid-version -export-symbols-regex ^_*gst_plugin_desc$ -no-undefined -L/home/chaz/Programs/lib -L/home/chaz/Libraries/lib -lpthread -o libgsttaglib.la -rpath /home/chaz/Libraries/gstreamer/0.10.25/lib/gstreamer-0.10 libgsttaglib_la-gsttaglibmux.lo libgsttaglib_la-gstid3v2mux.lo libgsttaglib_la-gstapev2mux.lo -pthread -L/home/chaz/Libraries/gstreamer/0.10.25/lib -L/home/chaz/Libraries/glib/2.18.4/lib -L/home/chaz/Libraries/libxml2/2.7.3/lib -lgstreamer-0.10 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lxml2 -lglib-2.0 -lgsttag-0.10 -pthread -L/home/chaz/Libraries/gstreamer/0.10.25/lib -L/home/chaz/Libraries/glib/2.18.4/lib -L/home/chaz/Libraries/libxml2/2.7.3/lib -lgstreamer-0.10 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lxml2 -lglib-2.0 -ltag --shave-mode=link libtool: link: rm -fr .libs/libgsttaglib.exp libtool: link: /home/chaz/Programs/bin/nm -B .libs/libgsttaglib_la-gsttaglibmux.o .libs/libgsttaglib_la-gstid3v2mux.o .libs/libgsttaglib_la-gstapev2mux.o | sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' | /bin/sed 's/.* //' | sort | uniq > .libs/libgsttaglib.exp libtool: link: /bin/grep -E -e "^_*gst_plugin_desc$" ".libs/libgsttaglib.exp" > ".libs/libgsttaglib.expT" libtool: link: mv -f ".libs/libgsttaglib.expT" ".libs/libgsttaglib.exp" libtool: link: g++ -shared -nostdlib /usr/lib/crti.o /usr/local/home/chaz/Programs/gcc/4.4.1/bin/../lib/gcc/i686-pc-linux-gnu/4.4.1/crtbeginS.o .libs/libgsttaglib_la-gsttaglibmux.o .libs/libgsttaglib_la-gstid3v2mux.o .libs/libgsttaglib_la-gstapev2mux.o -Wl,-rpath -Wl,/home/chaz/Libraries/gstreamer/0.10.25/lib -Wl,-rpath -Wl,/home/chaz/Libraries/glib/2.18.4/lib -Wl,-rpath -Wl,/home/chaz/Libraries/libxml2/2.7.3/lib -Wl,-rpath -Wl,/home/chaz/Programs/gcc/4.4.1/lib -Wl,-rpath -Wl,/home/chaz/Libraries/gstreamer/0.10.25/lib -Wl,-rpath -Wl,/home/chaz/Libraries/glib/2.18.4/lib -Wl,-rpath -Wl,/home/chaz/Libraries/libxml2/2.7.3/lib -Wl,-rpath -Wl,/home/chaz/Programs/gcc/4.4.1/lib -L/home/chaz/Programs/lib -L/home/chaz/Libraries/lib -lpthread -L/home/chaz/Libraries/gstreamer/0.10.25/lib -L/home/chaz/Libraries/glib/2.18.4/lib -L/home/chaz/Libraries/libxml2/2.7.3/lib -lgsttag-0.10 /home/chaz/Libraries/gstreamer/0.10.25/lib/libgstreamer-0.10.so /home/chaz/Libraries/glib/2.18.4/lib/libgobject-2.0.so /home/chaz/Libraries/glib/2.18.4/lib/libgmodule-2.0.so /home/chaz/Libraries/glib/2.18.4/lib/libgthread-2.0.so -lrt /home/chaz/Libraries/libxml2/2.7.3/lib/libxml2.so /home/chaz/Libraries/glib/2.18.4/lib/libglib-2.0.so -ltag -L/usr/local/home/chaz/Programs/gcc/4.4.1/bin/../lib/gcc/i686-pc-linux-gnu/4.4.1 -L/usr/local/home/chaz/Programs/gcc/4.4.1/bin/../lib/gcc -L/usr/local/home/chaz/Programs/gcc/4.4.1/bin/../lib/gcc/i686-pc-linux-gnu/4.4.1/../../.. /home/chaz/Programs/gcc/4.4.1/lib/libstdc++.so -lm -lc -lgcc_s /usr/local/home/chaz/Programs/gcc/4.4.1/bin/../lib/gcc/i686-pc-linux-gnu/4.4.1/crtendS.o /usr/lib/crtn.o -pthread -pthread -pthread -pthread -Wl,-soname -Wl,libgsttaglib.so -Wl,-retain-symbols-file -Wl,.libs/libgsttaglib.exp -o .libs/libgsttaglib.so /home/chaz/Programs/bin/ld: fatal error: -shared and -r are incompatible collect2: ld returned 1 exit status make: *** [libgsttaglib.la] Error 1 It looks like it is down to dependent libraries and not taglib itself; I could try to go through all the dependencies and work out exactly which one is causing it (I presume I am looking for the *.la files for this?)
Yes, looks like either a broken dependent library or a bug in gold. I'm closing this bug now as such...