[uClibc] Problem with soft-float and hidden symbol in libgcc (uclibc0.9.26/gcc 3.3.4)

Andrew de Quincey adq_dvb at lidskialf.net
Sat Oct 23 17:59:03 UTC 2004


On Saturday 23 Oct 2004 18:09, Joakim Tjernlund wrote:
> > Hi, looking back at the mailing list, this problem seems to crop up now
> > and then. I'm creating a cross compiling toolchain from i386->ppc405
> > using soft float.
> >
> > (latest toolchain build scripts from CVS - gcc 3.3.4/ uclibc 0.9.26)
> >
> > It all seems to work, except for the same sort of messages as in:
> >
> > http://www.uclibc.org/lists/uclibc/2004-March/008520.html
> >
> > (hidden symbol __eqdf2 referenced by DSO).
> >
> > I investigated a bit, and it only happens when doing a shared link. It
> > seems to be because uclibc's libc.so and libm.so are not linked against
> > libgcc when they are built - so they end up trying to pull in symbols
> > from libgcc.a - which gcc objects to.
> >
> > I found two ways of fixing this - both involve editing the libm/Makefile
> > and libc/Makefile "shared" targets. Basically, you either add "-lgcc_s"
> > or "-lgcc
> > -L/path/to/your/stagingdir/lib/gcc-lib/ppc-405-linux-uclibc/3.3.4/" to
> > the LD command.
>
> Try copying the libm* files from .../uClibc/lib dir to .../staging_dir/lib

Hi, I tried this - makes no difference - the files in my uClibC/lib dir are 
identical to those in my staging dir anyway.

Just want to point out - I do have things building and running properly now 
using my fix (the -lgcc -L... one) - I just posted to see if this was a good 
way to do it - and also (assuming it is :) to help other people out with the 
same problem as it seems to come up a lot.



More information about the uClibc mailing list