Substitute libs

Daniel Eiband eiband at in.tum.de
Mon Apr 23 22:25:04 UTC 2007


Hi,

I need to substitute a precompiled uClibc 0.9.26 shipped with a 
firmware. Sources and configuration are available. The project I am 
working on is located here: http://ds-mod.sourceforge.net/ (still in an 
early state). The goal of this project is to enhance linux-based 
firmwares released by AVM (http://www.avm.de/en/).

The firmware targets a mipsel device and includes some binaries without 
source linked against uClibc. When I compile uClibc with a crosstool 
mipsel toolchain (gcc 3.3.2 binutils 2.15) and replace the libs of the 
firmware with the ones compiled, everything seams to work fine.

The problem rises when I try to use a more recent toolchain (gcc 4.1.1 
binutils 2.17). Compiling and replacing uClibc with this toolchain leads 
to a firmware which stops loading when init is invoked. If I replace 
everything except ld-uClibc-0.9.26.so everything seams to be good again. 
Is there a clean solution or at least a hack to use the up-to-date 
compiler in this case (binaries compiled with different compiler/linker 
versions linked against the same libc)?

Does it work with the old ld-uClibc and the new rest of the libs just by 
chance? Where are the pitfalls?

I use this patch to compile uClibc 0.9.26 with gcc4:
http://ds-mod.svn.sourceforge.net/viewvc/ds-mod/trunk/toolchain/target/uClibc/patches/04.01/100-gcc4-fixes.patch?revision=116&view=markup

Regards,
Daniel



More information about the uClibc mailing list