On Tue, 2009-06-16 at 21:07 -0300, Gerardo Exequiel Pozzi wrote: > Rare, this is not related to what "libc" used, is just an assembler > label (.ident) that GCC put in the output .s file. > > What are the commands that you use to build the library? Compiling an > executable/library with toolchain-ulibc works fine here. > > $ x86_64-unknown-linux-uclibc-gcc -fPIC -c hola.c > $ x86_64-unknown-linux-uclibc-gcc -shared -o hola.so hola.o > $ strings -a hola.so | grep -m1 GCC: > GCC: (GNU) 4.4.0 20090526 (prerelease) > $ readelf -d hola.so | grep NEEDED > 0x0000000000000001 (NEEDED) Shared library: [libgcc_s.so.1] > 0x0000000000000001 (NEEDED) Shared library: [libc.so.0] This is with uclibc, binutils-uclibc and binutils-gcc, with the use of cross-compiling using --target= from configure. This label is added via /usr/lib/*.o (crt1.o and friends), but the uclibc toolchain uses /usr/x86_64-unknown-linux-uclibc/lib/*.o, which doesn't contain that label. So that clarifies the difference.