[ RESEND after subscription to ltrace-devel ML ]

Hi,

I have played with an upgrade to gcc-4.6.2 as target-compiler for
MIPSel in a OSS router project called Freetz [1].

Unfortunately, the build of ltrace-0.5.3 failed like this:

/mnt/sdb3/freetz/freetz-trunk/toolchain/build/mipsel_gcc-4.6.2_uClibc-0.9.32/mipsel-linux-uclibc/bin/mipsel-linux-uclibc-gcc
 main.o libltrace.a -lelf -lsupc++ -liberty  -o ltrace
/mnt/sdb3/freetz/freetz-trunk/toolchain/build/mipsel_gcc-4.6.2_uClibc-0.9.32/mipsel-linux-uclibc/lib/gcc/mipsel-linux-uclibc/4.6.2/../../../../mipsel-linux-uclibc/bin/ld:
skipping incompatible
/mnt/sdb3/freetz/freetz-trunk/toolchain/build/mipsel_gcc-4.6.2_uClibc-0.9.32/mipsel-linux-uclibc/lib/gcc/mipsel-linux-uclibc/4.6.2/../../../../mipsel-linux-uclibc/lib/libiberty.a
when searching for -liberty

Attached is a patch of mine.
My box is running stable for more than 24hrs and ltrace works fine.

The responsible developers checked in a more robust patch in [2].

Personally, I am on Debian/sid i386, but I have not checked with
building an i386 package.

I hope one of those patches from the Freetz project is helpful to you.


Regards,
- Sedat (dileks on IRC) -

[1] http://freetz.org/
[2] 
http://freetz.org/browser/trunk/make/ltrace/patches/300-link_available_libraries_only.patch

P.S.: NOTE: The cause for this due to that ChangeLog entry.

diff -uprN gcc-4.6.1/ChangeLog gcc-4.6.2/ChangeLog
--- gcc-4.6.1/ChangeLog 2011-06-27 12:03:52.000000000 +0200
+++ gcc-4.6.2/ChangeLog 2011-10-26 11:06:43.000000000 +0200
@@ -1,3 +1,23 @@
+2011-10-26  Release Manager
+
+       * GCC 4.6.2 released.
+
+2011-06-27  Hans-Peter Nilsson  <[email protected]>
+
+       PR regression/47836
+       PR bootstrap/23656
+       PR other/47733
+       PR bootstrap/49247
+       PR c/48825
+       * configure.ac (target_libraries): Remove target-libiberty.
+       Remove all target-specific settings adding target-libiberty to
+       skipdirs and noconfigdirs.  Remove checking target_configdirs
+       and removing target-libiberty but keeping target-libgcc if
+       otherwise empty.
+       * Makefile.def (target_modules): Don't add libiberty.
+       (dependencies): Remove all traces of target-libiberty.
+       * configure, Makefile.in: Regenerate.
+
 2011-06-27  Release Manager

       * GCC 4.6.1 released

- EOT -
diff --git configure configure
index dda41fe..89929c5 100755
--- configure
+++ configure
@@ -78,7 +78,12 @@ fi
 rm -f conftest.c a.out
 
 CFLAGS='-g -O2'
-LIBS='-lelf -lsupc++ -liberty '
+if [ "$HAVE_LIBIBERTY" ]
+then
+  LIBS='-lelf -lsupc++ -liberty '
+else
+  LIBS='-lelf -lsupc++ '
+fi
 INSTALL='$/usr/bin/install -c'
 iquote='-iquote '
 iquoteend=''
_______________________________________________
Ltrace-devel mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/ltrace-devel

Reply via email to