Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] buildroot-libtool.patch failed with dbus 1.3.0
@ 2009-08-07 19:52 Jean-Christian de Rivaz
  2009-08-07 20:17 ` Thomas Petazzoni
  0 siblings, 1 reply; 12+ messages in thread
From: Jean-Christian de Rivaz @ 2009-08-07 19:52 UTC (permalink / raw)
  To: buildroot

Hi all,

In the hope to close a dbus issue, I tryed to update it to the version
1.3.0 by changing the DBUS_VERSION in package/dbus/dbus.mk.
Unfortunately this raised a libtool problem that seem specific to
buildroot as the native dbus archive compile without this problem:

 >>> dbus 1.3.0 Extracting
 >>> dbus 1.3.0 Patching libtool

Applying buildroot-libtool.patch using plaintext:
patching file ltmain.sh
Hunk #1 FAILED at 273.
Hunk #2 succeeded at 5425 (offset 3017 lines).
Hunk #3 FAILED at 5569.
Hunk #4 FAILED at 5913.
Hunk #5 succeeded at 8089 with fuzz 1 (offset 2466 lines).
Hunk #6 FAILED at 8414.
4 out of 6 hunks FAILED -- saving rejects to file ltmain.sh.rej
Patch failed!  Please fix buildroot-libtool.patch!
make: *** 
[/home/jcdr/try/buildroot/build_i686/dbus-1.3.0/.stamp_libtool_patch] 
Erreur 1

I tested also the last buildroot git tree with ARM and i386: same
result.

If I understand correctly, buildroot have a script
package/Makefile.autotools.in that try to patch the ltmain.sh for his
specific need. How can I disable or fix this ?

Best Regards,

Jean-Christian de Rivaz

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] buildroot-libtool.patch failed with dbus 1.3.0
  2009-08-07 19:52 [Buildroot] buildroot-libtool.patch failed with dbus 1.3.0 Jean-Christian de Rivaz
@ 2009-08-07 20:17 ` Thomas Petazzoni
  2009-08-07 21:40   ` [Buildroot] [PATCH] " Jean-Christian de Rivaz
  0 siblings, 1 reply; 12+ messages in thread
From: Thomas Petazzoni @ 2009-08-07 20:17 UTC (permalink / raw)
  To: buildroot

Le Fri, 07 Aug 2009 21:52:16 +0200,
Jean-Christian de Rivaz <jc@eclis.ch> a ?crit :

> If I understand correctly, buildroot have a script
> package/Makefile.autotools.in that try to patch the ltmain.sh for his
> specific need. How can I disable or fix this ?

You can disable it by adding DBUS_LIBTOOL_PATCH = NO in dbus/dbus.mk.

However, libtool will not be patched anymore, so depending on the
version of libtool being used in dbus-1.3.0, it might break the build.

Sincerly,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers and embedded Linux development,
consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH] Re: buildroot-libtool.patch failed with dbus 1.3.0
  2009-08-07 20:17 ` Thomas Petazzoni
@ 2009-08-07 21:40   ` Jean-Christian de Rivaz
  2009-08-07 22:43     ` Thomas Petazzoni
  0 siblings, 1 reply; 12+ messages in thread
From: Jean-Christian de Rivaz @ 2009-08-07 21:40 UTC (permalink / raw)
  To: buildroot

Thomas Petazzoni a ?crit :
> Le Fri, 07 Aug 2009 21:52:16 +0200,
> Jean-Christian de Rivaz <jc@eclis.ch> a ?crit :
> 
>> If I understand correctly, buildroot have a script
>> package/Makefile.autotools.in that try to patch the ltmain.sh for his
>> specific need. How can I disable or fix this ?
> 
> You can disable it by adding DBUS_LIBTOOL_PATCH = NO in dbus/dbus.mk.
> 
> However, libtool will not be patched anymore, so depending on the
> version of libtool being used in dbus-1.3.0, it might break the build.

Thanks for the trick! It seem that dbus archives contain a new ltmain.sh
since the dbus version 1.2.16. I have successfully tested the following
patch with dbus version 1.2.12, 1.2.14, 1.2.16 and 1.3.0. On each test I
also verified that dbus-glib compile.

Best Regards,

Jean-Christian de Rivaz


 From cf50719def4ff430755b1ddf8e8adf9edaafabfc Mon Sep 17 00:00:00 2001
From: Jean-Christian de Rivaz <jc@eclis.ch>
Date: Fri, 7 Aug 2009 23:31:08 +0200
Subject: [PATCH] Update dbus to version 1.3.0. Disable ltmain.sh 
patching for dbus version since 1.2.16

Signed-off-by: Jean-Christian de Rivaz <jc@eclis.ch>
---
  package/dbus/dbus.mk |   11 ++++++++++-
  1 files changed, 10 insertions(+), 1 deletions(-)

diff --git a/package/dbus/dbus.mk b/package/dbus/dbus.mk
index 7326b41..6bf98c0 100644
--- a/package/dbus/dbus.mk
+++ b/package/dbus/dbus.mk
@@ -3,7 +3,7 @@
  # dbus
  #
  #############################################################
-DBUS_VERSION = 1.2.12
+DBUS_VERSION = 1.3.0
  DBUS_SOURCE = dbus-$(DBUS_VERSION).tar.gz
  DBUS_SITE = http://dbus.freedesktop.org/releases/dbus/
  DBUS_INSTALL_STAGING = YES
@@ -18,6 +18,15 @@ endif

  DBUS_DEPENDENCIES = uclibc host-pkgconfig

+# DBus project have changed there ltmain.sh since version 1.2.16
+# Why the package/Makefile.autotools.in can't handle that ?
+ifeq ($(DBUS_VERSION),1.2.16)
+DBUS_LIBTOOL_PATCH = NO
+endif
+ifeq ($(DBUS_VERSION),1.3.0)
+DBUS_LIBTOOL_PATCH = NO
+endif
+
  DBUS_CONF_ENV = ac_cv_have_abstract_sockets=yes
  DBUS_CONF_OPT = --program-prefix="" \
                 --with-dbus-user=dbus \
--
1.5.6.5

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH] Re: buildroot-libtool.patch failed with dbus 1.3.0
  2009-08-07 21:40   ` [Buildroot] [PATCH] " Jean-Christian de Rivaz
@ 2009-08-07 22:43     ` Thomas Petazzoni
  2009-08-07 23:07       ` Jean-Christian de Rivaz
  0 siblings, 1 reply; 12+ messages in thread
From: Thomas Petazzoni @ 2009-08-07 22:43 UTC (permalink / raw)
  To: buildroot

Le Fri, 07 Aug 2009 23:40:53 +0200,
Jean-Christian de Rivaz <jc@eclis.ch> a ?crit :

> Thanks for the trick! It seem that dbus archives contain a new
> ltmain.sh since the dbus version 1.2.16. I have successfully tested
> the following patch with dbus version 1.2.12, 1.2.14, 1.2.16 and
> 1.3.0. On each test I also verified that dbus-glib compile.

Ok. We don't usually support several versions of a package, except for
very special cases. And for the moment 1.3.0 is only a development
version.

Could you send a patch that just bumps the version to 1.2.16 and
switches DBUS_LIBTOOL_PATCH to NO ?

BTW, the issue is that dbus < 1.2.16 uses libtool 1.5.x, which is
notoriously broken for cross-compilation. That's why we have this
package/buildroot-libtool.patch thing that can be enabled/disable using
<PKG>_LIBTOOL_PATCH (default is enabled). dbus >= 1.2.16 uses libtool
2.2.x, which seems to have been fixed (i.e it works without the patch).

BTW, I'm precisely currently trying to improve how we handle libtool.
But the result of this work is only for after 2009.08.

Thanks!

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers and embedded Linux development,
consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH] Re: buildroot-libtool.patch failed with dbus 1.3.0
  2009-08-07 22:43     ` Thomas Petazzoni
@ 2009-08-07 23:07       ` Jean-Christian de Rivaz
  2009-08-08 18:09         ` Thomas Petazzoni
  0 siblings, 1 reply; 12+ messages in thread
From: Jean-Christian de Rivaz @ 2009-08-07 23:07 UTC (permalink / raw)
  To: buildroot

Thomas Petazzoni a ?crit :
> Le Fri, 07 Aug 2009 23:40:53 +0200,
> Jean-Christian de Rivaz <jc@eclis.ch> a ?crit :
> 
>> Thanks for the trick! It seem that dbus archives contain a new
>> ltmain.sh since the dbus version 1.2.16. I have successfully tested
>> the following patch with dbus version 1.2.12, 1.2.14, 1.2.16 and
>> 1.3.0. On each test I also verified that dbus-glib compile.
> 
> Ok. We don't usually support several versions of a package, except for
> very special cases. And for the moment 1.3.0 is only a development
> version.
 >
> Could you send a patch that just bumps the version to 1.2.16 and
> switches DBUS_LIBTOOL_PATCH to NO ?

See the patch below. I Hope it's the right way.

Jean-Christian de Rivaz


 From 436b95227c456d88dc6a2179940947dbb7635488 Mon Sep 17 00:00:00 2001
From: Jean-Christian de Rivaz <jc@eclis.ch>
Date: Sat, 8 Aug 2009 01:01:49 +0200
Subject: [PATCH] Update dbus to version 1.2.16

Signed-off-by: Jean-Christian de Rivaz <jc@eclis.ch>
---
  package/dbus/dbus.mk |    3 ++-
  1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/package/dbus/dbus.mk b/package/dbus/dbus.mk
index 7326b41..dd11677 100644
--- a/package/dbus/dbus.mk
+++ b/package/dbus/dbus.mk
@@ -3,9 +3,10 @@
  # dbus
  #
  #############################################################
-DBUS_VERSION = 1.2.12
+DBUS_VERSION = 1.2.16
  DBUS_SOURCE = dbus-$(DBUS_VERSION).tar.gz
  DBUS_SITE = http://dbus.freedesktop.org/releases/dbus/
+DBUS_LIBTOOL_PATCH = NO
  DBUS_INSTALL_STAGING = YES
  DBUS_INSTALL_TARGET = YES
  ifeq ($(BR2_ENABLE_DEBUG),y)
-- 
1.5.6.5

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH] Re: buildroot-libtool.patch failed with dbus 1.3.0
  2009-08-07 23:07       ` Jean-Christian de Rivaz
@ 2009-08-08 18:09         ` Thomas Petazzoni
  2009-08-08 22:36           ` Jean-Christian de Rivaz
  0 siblings, 1 reply; 12+ messages in thread
From: Thomas Petazzoni @ 2009-08-08 18:09 UTC (permalink / raw)
  To: buildroot

Le Sat, 08 Aug 2009 01:07:56 +0200,
Jean-Christian de Rivaz <jc@eclis.ch> a ?crit :

> See the patch below. I Hope it's the right way.

Thanks. The patch was damaged by your e-mail client it seems, but I've
been able to fix it manually. I've integrated your fix into my
for-2009.08 branch, that hopefully will get pulled by Peter Korsgaard,
Buildroot's maintainer, when he'll get back from holidays.

 http://git.buildroot.net/~tpetazzoni/git/buildroot/log/?h=for-2009.08.

However, while dbus compilation works successfully now, dbus-glib still
fails to build here:

 /usr/lib/libgobject-2.0.so: could not read symbols: File in wrong
 format collect2: ld returned 1 exit status

So it's a libtool patch issue, again :-)

Thanks for your contribution,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers and embedded Linux development,
consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH] Re: buildroot-libtool.patch failed with dbus 1.3.0
  2009-08-08 18:09         ` Thomas Petazzoni
@ 2009-08-08 22:36           ` Jean-Christian de Rivaz
  2009-08-08 22:59             ` Thomas Petazzoni
  2009-08-09 22:17             ` Thomas Petazzoni
  0 siblings, 2 replies; 12+ messages in thread
From: Jean-Christian de Rivaz @ 2009-08-08 22:36 UTC (permalink / raw)
  To: buildroot

Thomas Petazzoni a ?crit :
> Le Sat, 08 Aug 2009 01:07:56 +0200,
> Jean-Christian de Rivaz <jc@eclis.ch> a ?crit :
> 
>> See the patch below. I Hope it's the right way.
> 
> Thanks. The patch was damaged by your e-mail client it seems, but I've
> been able to fix it manually. I've integrated your fix into my
> for-2009.08 branch, that hopefully will get pulled by Peter Korsgaard,
> Buildroot's maintainer, when he'll get back from holidays.
> 
>  http://git.buildroot.net/~tpetazzoni/git/buildroot/log/?h=for-2009.08.

Sorry for the broken patch and tanks for accepting it. I have to learn
the git mail command some day...

> However, while dbus compilation works successfully now, dbus-glib still
> fails to build here:
> 
>  /usr/lib/libgobject-2.0.so: could not read symbols: File in wrong
>  format collect2: ld returned 1 exit status
> 
> So it's a libtool patch issue, again :-)

That's strange since I use dbus-glib on a ARM target for about 20
applications with the dbus-1.3.0 without that problem. I usually get the
wrong format message when I have not do a make clean before switching to
an other architecture. Can you post more lines before the error so I can
compare with my own build ?

Best Regards,

Jean-Christian de Rivaz

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH] Re: buildroot-libtool.patch failed with dbus 1.3.0
  2009-08-08 22:36           ` Jean-Christian de Rivaz
@ 2009-08-08 22:59             ` Thomas Petazzoni
  2009-08-10  7:29               ` Jean-Christian de Rivaz
  2009-08-09 22:17             ` Thomas Petazzoni
  1 sibling, 1 reply; 12+ messages in thread
From: Thomas Petazzoni @ 2009-08-08 22:59 UTC (permalink / raw)
  To: buildroot

Le Sun, 09 Aug 2009 00:36:36 +0200,
Jean-Christian de Rivaz <jc@eclis.ch> a ?crit :

> Sorry for the broken patch and tanks for accepting it. I have to learn
> the git mail command some day...

It's quite easy to use actually, once you have the patch generated.

> That's strange since I use dbus-glib on a ARM target for about 20
> applications with the dbus-1.3.0 without that problem. I usually get
> the wrong format message when I have not do a make clean before
> switching to an other architecture. Can you post more lines before
> the error so I can compare with my own build ?

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

Sincerly,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers and embedded Linux development,
consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH] Re: buildroot-libtool.patch failed with dbus 1.3.0
  2009-08-08 22:36           ` Jean-Christian de Rivaz
  2009-08-08 22:59             ` Thomas Petazzoni
@ 2009-08-09 22:17             ` Thomas Petazzoni
  2009-08-10  7:37               ` Jean-Christian de Rivaz
  1 sibling, 1 reply; 12+ messages in thread
From: Thomas Petazzoni @ 2009-08-09 22:17 UTC (permalink / raw)
  To: buildroot

Le Sun, 09 Aug 2009 00:36:36 +0200,
Jean-Christian de Rivaz <jc@eclis.ch> a ?crit :

> > However, while dbus compilation works successfully now, dbus-glib
> > still fails to build here:
> > 
> >  /usr/lib/libgobject-2.0.so: could not read symbols: File in wrong
> >  format collect2: ld returned 1 exit status
> > 
> > So it's a libtool patch issue, again :-)
> 
> That's strange since I use dbus-glib on a ARM target for about 20
> applications with the dbus-1.3.0 without that problem. I usually get
> the wrong format message when I have not do a make clean before
> switching to an other architecture. Can you post more lines before
> the error so I can compare with my own build ?

The difference between my setup and your setup is probably that I do
actually have /usr/lib/libgobject-2.0.so in my filesystem, since the
libglib2.0-dev package is installed on my distribution. In your case,
this package is probably not installed, and therefore, libtool doesn't
think that the correct libgobject library is in /usr/lib.

I've actually tried this hypothesis on another package (webkit that was
failing in a similar way on libenchant), and remove the development
files in /usr/lib, and the link succeeded.

It seems to be hard to convince libtool that /usr/lib does *not*
contain anything interesting.

Sincerly,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers and embedded Linux development,
consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH] Re: buildroot-libtool.patch failed with dbus 1.3.0
  2009-08-08 22:59             ` Thomas Petazzoni
@ 2009-08-10  7:29               ` Jean-Christian de Rivaz
  2009-08-10  7:39                 ` Jean-Christian de Rivaz
  0 siblings, 1 reply; 12+ messages in thread
From: Jean-Christian de Rivaz @ 2009-08-10  7:29 UTC (permalink / raw)
  To: buildroot

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

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH] Re: buildroot-libtool.patch failed with dbus 1.3.0
  2009-08-09 22:17             ` Thomas Petazzoni
@ 2009-08-10  7:37               ` Jean-Christian de Rivaz
  0 siblings, 0 replies; 12+ messages in thread
From: Jean-Christian de Rivaz @ 2009-08-10  7:37 UTC (permalink / raw)
  To: buildroot

Thomas Petazzoni a ?crit :
> Le Sun, 09 Aug 2009 00:36:36 +0200,
> Jean-Christian de Rivaz <jc@eclis.ch> a ?crit :
> 
>>> However, while dbus compilation works successfully now, dbus-glib
>>> still fails to build here:
>>>
>>>  /usr/lib/libgobject-2.0.so: could not read symbols: File in wrong
>>>  format collect2: ld returned 1 exit status
>>>
>>> So it's a libtool patch issue, again :-)
>> That's strange since I use dbus-glib on a ARM target for about 20
>> applications with the dbus-1.3.0 without that problem. I usually get
>> the wrong format message when I have not do a make clean before
>> switching to an other architecture. Can you post more lines before
>> the error so I can compare with my own build ?
> 
> The difference between my setup and your setup is probably that I do
> actually have /usr/lib/libgobject-2.0.so in my filesystem, since the
> libglib2.0-dev package is installed on my distribution. In your case,
> this package is probably not installed, and therefore, libtool doesn't
> think that the correct libgobject library is in /usr/lib.

But I have the usr/lib/libgobject-2.0 on my system:
$ file /usr/lib/libgobject-2.0.so
/usr/lib/libgobject-2.0.so: symbolic link to `libgobject-2.0.so.0.1600.6'
$ file /usr/lib/libgobject-2.0.so.0.1600.6
/usr/lib/libgobject-2.0.so.0.1600.6: ELF 64-bit LSB shared object, 
x86-64, version 1 (SYSV), dynamically linked, stripped

> I've actually tried this hypothesis on another package (webkit that was
> failing in a similar way on libenchant), and remove the development
> files in /usr/lib, and the link succeeded.
> 
> It seems to be hard to convince libtool that /usr/lib does *not*
> contain anything interesting.

Yes. This is a common problem with libtool while cross-compiling.
Sometime the problem are in the *.la files installed into the staging.

Best regards,

Jean-Christian de Rivaz

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH] Re: buildroot-libtool.patch failed with dbus 1.3.0
  2009-08-10  7:29               ` Jean-Christian de Rivaz
@ 2009-08-10  7:39                 ` Jean-Christian de Rivaz
  0 siblings, 0 replies; 12+ messages in thread
From: Jean-Christian de Rivaz @ 2009-08-10  7:39 UTC (permalink / raw)
  To: buildroot

Jean-Christian de Rivaz a ?crit :
> 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.

Err. Should be reads "..., and I get this below *without* problem."
Sorry for the typo.

Regards,

Jean-Christian de Rivaz

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2009-08-10  7:39 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-07 19:52 [Buildroot] buildroot-libtool.patch failed with dbus 1.3.0 Jean-Christian de Rivaz
2009-08-07 20:17 ` Thomas Petazzoni
2009-08-07 21:40   ` [Buildroot] [PATCH] " Jean-Christian de Rivaz
2009-08-07 22:43     ` Thomas Petazzoni
2009-08-07 23:07       ` Jean-Christian de Rivaz
2009-08-08 18:09         ` Thomas Petazzoni
2009-08-08 22:36           ` Jean-Christian de Rivaz
2009-08-08 22:59             ` Thomas Petazzoni
2009-08-10  7:29               ` Jean-Christian de Rivaz
2009-08-10  7:39                 ` Jean-Christian de Rivaz
2009-08-09 22:17             ` Thomas Petazzoni
2009-08-10  7:37               ` Jean-Christian de Rivaz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox