building eglibc 2.9 with enable-oldest-abi=2.9 for i486-pc-linux-gnu
Simon Braunschmidt
sb@emlix.com
Wed Apr 22 08:12:00 GMT 2009
Hi
I try to find a solution to a build problem when setting
--enable-oldest-abi=2.9
The build breaks when linking libc.so with:
/opt/foobar/master/bin/i486-pc-linux-gnu-gcc -shared -static-libgcc
-Wl,-O1 -Wl,-z,defs -Wl,-dynamic-linker=/lib/ld-linux.so.2
-B/tmp/e2/build/eglibc-build/csu/
-Wl,--version-script=/tmp/e2/build/eglibc-build/libc.map
-Wl,-soname=libc.so.6 -Wl,-z,combreloc -Wl,-z,relro
-Wl,--hash-style=both -nostdlib -nostartfiles -e __libc_main
-L/tmp/e2/build/eglibc-build -L/tmp/e2/build/eglibc-build/math
-L/tmp/e2/build/eglibc-build/elf -L/tmp/e2/build/eglibc-build/dlfcn
-L/tmp/e2/build/eglibc-build/nss -L/tmp/e2/build/eglibc-build/nis
-L/tmp/e2/build/eglibc-build/rt -L/tmp/e2/build/eglibc-build/resolv
-L/tmp/e2/build/eglibc-build/crypt -L/tmp/e2/build/eglibc-build/nptl
-Wl,-rpath-link=/tmp/e2/build/eglibc-build:/tmp/e2/build/eglibc-build/math:/tmp/e2/build/eglibc-build/elf:/tmp/e2/build/eglibc-build/dlfcn:/tmp/e2/build/eglibc-build/nss:/tmp/e2/build/eglibc-build/nis:/tmp/e2/build/eglibc-build/rt:/tmp/e2/build/eglibc-build/resolv:/tmp/e2/build/eglibc-build/crypt:/tmp/e2/build/eglibc-build/nptl
-o /tmp/e2/build/eglibc-build/libc.so -T
/tmp/e2/build/eglibc-build/shlib.lds
/tmp/e2/build/eglibc-build/csu/abi-note.o
/tmp/e2/build/eglibc-build/elf/soinit.os
/tmp/e2/build/eglibc-build/libc_pic.os
/tmp/e2/build/eglibc-build/elf/sofini.os
/tmp/e2/build/eglibc-build/elf/interp.os
/tmp/e2/build/eglibc-build/elf/ld.so -lgcc
/opt/foobar/master/lib/gcc/i486-pc-linux-gnu/4.3.2/../../../../i486-pc-linux-gnu/bin/ld:
/tmp/e2/build/eglibc-build/libc.so: version node not found for symbol
getrlimit@GLIBC_2.0
/opt/foobar/master/lib/gcc/i486-pc-linux-gnu/4.3.2/../../../../i486-pc-linux-gnu/bin/ld:
failed to set dynamic section sizes: Bad value
I found several other references and reports that i think are also
related to this problem, cited below.
I have attached my build-configuration, the error message and the
libc.map from the build.
Any help would be greatly appreciated
Best Regards
Simon Braunschmidt
Simon.Braunschmidt@emlix.com
FURTHER REFERENCES
-1- look for getrlimit@2.0 in the glibc source,
-2- http://sourceware.org/bugzilla/show_bug.cgi?id=6652
-3- post on glibc-alpha ML, felipe contreras, 06/13/2006 06:12 PM
Hi everybody,
I noticed the enable-oldest-abi=2.3 option in the configure script
doesn't work for i386 and arm, and I was told it didn't work either
for powerpc. I know enable-oldest-abi=2.4 doesn't work either.
I did some research and I found that the problem is that a lot of
syscalls.list files have glibc versions hard coded.
For example:
vm86old EXTRA vm86old i:p __vm86old
vm86@GLIBC_2.0
After I removed the functions with strong names that had version
hard
coded I could compile fine for arm.
The error I got for i386 was:
/tools/bin/ld: /home/felipec/src/glibc-build/libc.so: undefined
versioned symbol name vm86@GLIBC_2.0
For arm I got a similar error but with getrlimit@GLIBC_2.0
Is that the expected behavior?
PS. I'm not on the list, so can you CC me?
--
Felipe Contreras
-4- patches on glibc-alpha by H. J. Lu regarding
PATCH: fix the oldest ABI
--enable-oldest-abi is badly broken
PATCH: Fix --enable-oldest-abi
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: configure_n_make.oldest-abi.txt
URL: <http://sourceware.org/pipermail/libc-help/attachments/20090422/0c73b2b3/attachment.txt>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: last_few_lines_of_make_output_oldest-abi.txt
URL: <http://sourceware.org/pipermail/libc-help/attachments/20090422/0c73b2b3/attachment-0001.txt>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: oldest-api.libc.map
URL: <http://sourceware.org/pipermail/libc-help/attachments/20090422/0c73b2b3/attachment.ksh>
More information about the Libc-help
mailing list