[Buildroot] [PATCH] Re: buildroot-libtool.patch failed with dbus 1.3.0
Jean-Christian de Rivaz
jc at eclis.ch
Mon Aug 10 07:29:12 UTC 2009
Thomas Petazzoni a écrit :
> Here it is. It's the classical problem, you call libtool --mode=link
> with some libraries (here -lgobject-2.0), and libtool replaces -lglib2.0
> by an incorrect absolute path, here /usr/lib/libgobject-2.0.so. The log:
>
> /bin/bash ../libtool --tag=CC --mode=link /usr/local/xtools/arm-unknown-linux-uclibcgnueabi-gcc-4.3.4/bin/arm-linux-gcc -Os -pipe -Os --sysroot /home/thomas/local/buildroot-test/build_arm/staging_dir/ -Os -pipe -Os --sysroot /home/thomas/local/buildroot-test/build_arm/staging_dir/ -Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wfloat-equal -Wsign-compare -export-symbols-regex "^[^_].*" -version-info 3:0:1 -no-undefined --sysroot /home/thomas/local/buildroot-test/build_arm/staging_dir/ -o libdbus-glib-1.la -rpath /usr/lib dbus-glib.lo dbus-gmain.lo dbus-gmarshal.lo dbus-gobject.lo dbus-gproxy.lo dbus-gtest.lo dbus-gvalue.lo dbus-gthread.lo dbus-gtype-specialized.lo dbus-gutils.lo dbus-gsignature.lo dbus-gvalue-utils.lo -ldbus-1 -lpthread -lgobject-2.0 -lglib-2.0 -lintl
> generating symbol list for `libdbus-glib-1.la'
> /usr/local/xtools/arm-unknown-linux-uclibcgnueabi-gcc-4.3.4/bin/arm-linux-nm .libs/dbus-glib.o .libs/dbus-gmain.o .libs/dbus-gmarshal.o .libs/dbus-gobject.o .libs/dbus-gproxy.o .libs/dbus-gtest.o .libs/dbus-gvalue.o .libs/dbus-gthread.o .libs/dbus-gtype-specialized.o .libs/dbus-gutils.o .libs/dbus-gsignature.o .libs/dbus-gvalue-utils.o | sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' | /home/thomas/local/buildroot-test/toolchain_build_arm/bin/sed 's/.* //' | sort | uniq > .libs/libdbus-glib-1.exp
> /bin/grep -E -e "^[^_].*" ".libs/libdbus-glib-1.exp" > ".libs/libdbus-glib-1.expT"
> mv -f ".libs/libdbus-glib-1.expT" ".libs/libdbus-glib-1.exp"
> echo "{ global:" > .libs/libdbus-glib-1.ver
> cat .libs/libdbus-glib-1.exp | sed -e "s/\(.*\)/\1;/" >> .libs/libdbus-glib-1.ver
> echo "local: *; };" >> .libs/libdbus-glib-1.ver
> /usr/local/xtools/arm-unknown-linux-uclibcgnueabi-gcc-4.3.4/bin/arm-linux-gcc -Os -pipe -Os --sysroot /home/thomas/local/buildroot-test/build_arm/staging_dir/ -shared .libs/dbus-glib.o .libs/dbus-gmain.o .libs/dbus-gmarshal.o .libs/dbus-gobject.o .libs/dbus-gproxy.o .libs/dbus-gtest.o .libs/dbus-gvalue.o .libs/dbus-gthread.o .libs/dbus-gtype-specialized.o .libs/dbus-gutils.o .libs/dbus-gsignature.o .libs/dbus-gvalue-utils.o -ldbus-1 -lpthread /usr/lib/libgobject-2.0.so /usr/lib/libglib-2.0.so -lintl -Wl,-soname -Wl,libdbus-glib-1.so.2 -Wl,-version-script -Wl,.libs/libdbus-glib-1.ver -o .libs/libdbus-glib-1.so.2.1.0
> /usr/lib/libgobject-2.0.so: could not read symbols: File in wrong format
> collect2: ld returned 1 exit status
> make[5]: *** [libdbus-glib-1.la] Error 1
Strange. I have redo the test after a git clean -dfx && git pull
--rebase with my patch on the top, and I get this below problem. I
notice that you use EABI while I use OABI. Can this confuse libtool ?
/bin/sh ../libtool --tag=CC --mode=link
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/bin/arm-linux-uclibc-gcc
-Os -pipe -Os
-I/home/jcdr/try/buildroot/build_arm/staging_dir/usr/include
-I/home/jcdr/try/buildroot/build_arm/staging_dir/include
--sysroot=/home/jcdr/try/buildroot/build_arm/staging_dir/ -isysroot
/home/jcdr/try/buildroot/build_arm/staging_dir -mabi=apcs-gnu -Os -pipe
-Os -I/home/jcdr/try/buildroot/build_arm/staging_dir/usr/include
-I/home/jcdr/try/buildroot/build_arm/staging_dir/include
--sysroot=/home/jcdr/try/buildroot/build_arm/staging_dir/ -isysroot
/home/jcdr/try/buildroot/build_arm/staging_dir -mabi=apcs-gnu -Wall
-Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes
-Wnested-externs -Wpointer-arith -Wcast-align -Wfloat-equal
-Wsign-compare -export-symbols-regex "^[^_].*" -version-info 3:0:1
-no-undefined -L/home/jcdr/try/buildroot/build_arm/staging_dir/lib
-L/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib
--sysroot=/home/jcdr/try/buildroot/build_arm/staging_dir/ -o
libdbus-glib-1.la -rpath /usr/lib dbus-glib.lo dbus-gmain.lo
dbus-gmarshal.lo dbus-gobject.lo dbus-gproxy.lo dbus-gtest.lo
dbus-gvalue.lo dbus-gthread.lo dbus-gtype-specialized.lo dbus-gutils.lo
dbus-gsignature.lo dbus-gvalue-utils.lo -ldbus-1 -lpthread
-lgobject-2.0 -lglib-2.0 -lintl
generating symbol list for `libdbus-glib-1.la'
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/bin/arm-linux-uclibc-nm
.libs/dbus-glib.o .libs/dbus-gmain.o .libs/dbus-gmarshal.o
.libs/dbus-gobject.o .libs/dbus-gproxy.o .libs/dbus-gtest.o
.libs/dbus-gvalue.o .libs/dbus-gthread.o .libs/dbus-gtype-specialized.o
.libs/dbus-gutils.o .libs/dbus-gsignature.o .libs/dbus-gvalue-utils.o |
sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][
]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' |
/home/jcdr/try/buildroot/toolchain_build_arm/bin/sed 's/.* //' | sort |
uniq > .libs/libdbus-glib-1.exp
/bin/grep -E -e "^[^_].*" ".libs/libdbus-glib-1.exp" >
".libs/libdbus-glib-1.expT"
mv -f ".libs/libdbus-glib-1.expT" ".libs/libdbus-glib-1.exp"
echo "{ global:" > .libs/libdbus-glib-1.ver
cat .libs/libdbus-glib-1.exp | sed -e "s/\(.*\)/\1;/" >>
.libs/libdbus-glib-1.ver
echo "local: *; };" >> .libs/libdbus-glib-1.ver
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/bin/arm-linux-uclibc-gcc
-Os -pipe -Os
-I/home/jcdr/try/buildroot/build_arm/staging_dir/usr/include
-I/home/jcdr/try/buildroot/build_arm/staging_dir/include
--sysroot=/home/jcdr/try/buildroot/build_arm/staging_dir/ -isysroot
/home/jcdr/try/buildroot/build_arm/staging_dir -mabi=apcs-gnu -shared
.libs/dbus-glib.o .libs/dbus-gmain.o .libs/dbus-gmarshal.o
.libs/dbus-gobject.o .libs/dbus-gproxy.o .libs/dbus-gtest.o
.libs/dbus-gvalue.o .libs/dbus-gthread.o .libs/dbus-gtype-specialized.o
.libs/dbus-gutils.o .libs/dbus-gsignature.o .libs/dbus-gvalue-utils.o
-Wl,--rpath -Wl,/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib
-Wl,--rpath -Wl,/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib
-L/home/jcdr/try/buildroot/build_arm/staging_dir/lib
-L/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib/libdbus-1.so
-lpthread
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib/libgobject-2.0.so
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib/libglib-2.0.so
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib/libintl.so
-mabi=apcs-gnu -mabi=apcs-gnu -Wl,-soname -Wl,libdbus-glib-1.so.2
-Wl,-version-script -Wl,.libs/libdbus-glib-1.ver -o
.libs/libdbus-glib-1.so.2.1.0
(cd .libs && rm -f libdbus-glib-1.so.2 && ln -s libdbus-glib-1.so.2.1.0
libdbus-glib-1.so.2)
(cd .libs && rm -f libdbus-glib-1.so && ln -s libdbus-glib-1.so.2.1.0
libdbus-glib-1.so)
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/bin/arm-linux-uclibc-gcc
-Os -pipe -Os
-I/home/jcdr/try/buildroot/build_arm/staging_dir/usr/include
-I/home/jcdr/try/buildroot/build_arm/staging_dir/include
--sysroot=/home/jcdr/try/buildroot/build_arm/staging_dir/ -isysroot
/home/jcdr/try/buildroot/build_arm/staging_dir -mabi=apcs-gnu
-DHAVE_CONFIG_H -I. -I.. -I.. -I..
-I/home/jcdr/try/buildroot/build_arm/staging_dir/usr/include/dbus-1.0
-I/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib/dbus-1.0/include
-I/home/jcdr/try/buildroot/build_arm/staging_dir/usr/include/glib-2.0
-I/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib/glib-2.0/include
-DDBUS_COMPILATION=1 -DDBUS_LOCALEDIR=\"/usr/share/locale\"
-DDBUS_API_SUBJECT_TO_CHANGE=1 -Os -pipe -Os
-I/home/jcdr/try/buildroot/build_arm/staging_dir/usr/include
-I/home/jcdr/try/buildroot/build_arm/staging_dir/include
--sysroot=/home/jcdr/try/buildroot/build_arm/staging_dir/ -isysroot
/home/jcdr/try/buildroot/build_arm/staging_dir -mabi=apcs-gnu -Wall
-Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes
-Wnested-externs -Wpointer-arith -Wcast-align -Wfloat-equal
-Wsign-compare -MT dbus-gparser.lo -MD -MP -MF .deps/dbus-gparser.Tpo -c
dbus-gparser.c -o dbus-gparser.o >/dev/null 2>&1
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/bin/arm-linux-uclibc-ar
cru .libs/libdbus-glib-1.a dbus-glib.o dbus-gmain.o dbus-gmarshal.o
dbus-gobject.o dbus-gproxy.o dbus-gtest.o dbus-gvalue.o dbus-gthread.o
dbus-gtype-specialized.o dbus-gutils.o dbus-gsignature.o dbus-gvalue-utils.o
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/bin/arm-linux-uclibc-ranlib
.libs/libdbus-glib-1.a
creating libdbus-glib-1.la
(cd .libs && rm -f libdbus-glib-1.la && ln -s ../libdbus-glib-1.la
libdbus-glib-1.la)
mv -f .deps/dbus-gparser.Tpo .deps/dbus-gparser.Plo
/bin/sh ../libtool --tag=CC --mode=link
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/bin/arm-linux-uclibc-gcc
-Os -pipe -Os
-I/home/jcdr/try/buildroot/build_arm/staging_dir/usr/include
-I/home/jcdr/try/buildroot/build_arm/staging_dir/include
--sysroot=/home/jcdr/try/buildroot/build_arm/staging_dir/ -isysroot
/home/jcdr/try/buildroot/build_arm/staging_dir -mabi=apcs-gnu -Os -pipe
-Os -I/home/jcdr/try/buildroot/build_arm/staging_dir/usr/include
-I/home/jcdr/try/buildroot/build_arm/staging_dir/include
--sysroot=/home/jcdr/try/buildroot/build_arm/staging_dir/ -isysroot
/home/jcdr/try/buildroot/build_arm/staging_dir -mabi=apcs-gnu -Wall
-Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes
-Wnested-externs -Wpointer-arith -Wcast-align -Wfloat-equal
-Wsign-compare -L/home/jcdr/try/buildroot/build_arm/staging_dir/lib
-L/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib
--sysroot=/home/jcdr/try/buildroot/build_arm/staging_dir/ -o
libdbus-gtool.la dbus-gtype-specialized.lo dbus-gutils.lo
dbus-gsignature.lo dbus-gvalue-utils.lo dbus-gidl.lo
dbus-gloader-expat.lo dbus-gparser.lo -ldbus-1 -lpthread -lexpat
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/bin/arm-linux-uclibc-ar
cru .libs/libdbus-gtool.a .libs/dbus-gtype-specialized.o
.libs/dbus-gutils.o .libs/dbus-gsignature.o .libs/dbus-gvalue-utils.o
.libs/dbus-gidl.o .libs/dbus-gloader-expat.o .libs/dbus-gparser.o
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/bin/arm-linux-uclibc-ranlib
.libs/libdbus-gtool.a
creating libdbus-gtool.la
(cd .libs && rm -f libdbus-gtool.la && ln -s ../libdbus-gtool.la
libdbus-gtool.la)
/bin/sh ../libtool --tag=CC --mode=link
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/bin/arm-linux-uclibc-gcc
-Os -pipe -Os
-I/home/jcdr/try/buildroot/build_arm/staging_dir/usr/include
-I/home/jcdr/try/buildroot/build_arm/staging_dir/include
--sysroot=/home/jcdr/try/buildroot/build_arm/staging_dir/ -isysroot
/home/jcdr/try/buildroot/build_arm/staging_dir -mabi=apcs-gnu -Os -pipe
-Os -I/home/jcdr/try/buildroot/build_arm/staging_dir/usr/include
-I/home/jcdr/try/buildroot/build_arm/staging_dir/include
--sysroot=/home/jcdr/try/buildroot/build_arm/staging_dir/ -isysroot
/home/jcdr/try/buildroot/build_arm/staging_dir -mabi=apcs-gnu -Wall
-Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes
-Wnested-externs -Wpointer-arith -Wcast-align -Wfloat-equal
-Wsign-compare -L/home/jcdr/try/buildroot/build_arm/staging_dir/lib
-L/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib
--sysroot=/home/jcdr/try/buildroot/build_arm/staging_dir/ -o
dbus-binding-tool dbus-binding-tool-glib.o dbus-glib-tool.o
./libdbus-gtool.la ./libdbus-glib-1.la -ldbus-1 -lpthread
-lgobject-2.0 -lglib-2.0 -lintl -lexpat
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/bin/arm-linux-uclibc-gcc
-Os -pipe -Os
-I/home/jcdr/try/buildroot/build_arm/staging_dir/usr/include
-I/home/jcdr/try/buildroot/build_arm/staging_dir/include
--sysroot=/home/jcdr/try/buildroot/build_arm/staging_dir/ -isysroot
/home/jcdr/try/buildroot/build_arm/staging_dir -mabi=apcs-gnu -Os -pipe
-Os -I/home/jcdr/try/buildroot/build_arm/staging_dir/usr/include
-I/home/jcdr/try/buildroot/build_arm/staging_dir/include
--sysroot=/home/jcdr/try/buildroot/build_arm/staging_dir/ -isysroot
/home/jcdr/try/buildroot/build_arm/staging_dir -mabi=apcs-gnu -Wall
-Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes
-Wnested-externs -Wpointer-arith -Wcast-align -Wfloat-equal
-Wsign-compare --sysroot=/home/jcdr/try/buildroot/build_arm/staging_dir/
-o dbus-binding-tool dbus-binding-tool-glib.o dbus-glib-tool.o
-L/home/jcdr/try/buildroot/build_arm/staging_dir/lib
-L/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib
./.libs/libdbus-gtool.a ./.libs/libdbus-glib-1.so
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib/libdbus-1.so
-lpthread
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib/libgobject-2.0.so
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib/libglib-2.0.so
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib/libintl.so
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib/libiconv.so -lc
/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib/libexpat.so
-Wl,--rpath
-Wl,/home/jcdr/try/buildroot/build_arm/dbus-glib-0.80/dbus/.libs
-Wl,--rpath -Wl,/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib
-Wl,--rpath -Wl,/home/jcdr/try/buildroot/build_arm/staging_dir/usr/lib
Best Regards,
Jean-Christian de Rivaz
More information about the buildroot
mailing list