This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Running old apps (glibc 2.0.7 compiled) against current glibc
- To: GNU C Library <libc-alpha at sourceware dot cygnus dot com>
- Subject: Running old apps (glibc 2.0.7 compiled) against current glibc
- From: Ben Collins <bcollins at debian dot org>
- Date: Sun, 12 Aug 2001 02:10:28 -0400
Well, I fought with this all day, thinking it was a toolchain problem
(it may still be, but it isn't fixed in any of them, if so).
Basically I've run down this problem with two compilers:
gcc-2.95.4 (CVS 08-10) + dso_handle patch + atexit patch (in CVS)
gcc-3.0.1 (CVS 08-01)
Using binutils 2.11.90.0.25. Both compilers build glibc fine. The
problem comes when you then try to run a program built against glibc
2.0.7, it fails as such:
./foo: error while loading shared libraries: ./foo: undefined symbol: atexit
This is from current glibc CVS (as of today):
honken:~# objdump --dynamic-syms /lib/libc-2.2.4.so | grep atexit
00019784 l d .rel__libc_atexit 00000000
00111ccc l d __libc_atexit 00000000
000301d8 g DF .text 00000030 (GLIBC_2.0) atexit
00030020 g DF .text 00000040 GLIBC_2.1.3 __cxa_atexit
This is from CVS, about 2.5 weeks ago (7-22)
hiccup:~# objdump --dynamic-syms /lib/libc-2.2.3.so | grep atexit
00019624 l d .rel__libc_atexit 00000000
0011792c l d __libc_atexit 00000000
0002fcf0 g DF .text 00000034 (GLIBC_2.0) atexit
0002fb30 g DF .text 00000048 GLIBC_2.1.3 __cxa_atexit
The latter works fine with the old app. I've no idea why the former is
broken.
Can someone shed some light on this for me?
--
.----------=======-=-======-=========-----------=====------------=-=-----.
/ Ben Collins -- ...on that fantastic voyage... -- Debian GNU/Linux \
` bcollins@debian.org -- bcollins@openldap.org -- bcollins@linux.com '
`---=========------=======-------------=-=-----=-===-======-------=--=---'