PATCH: Handle undefined symbol in DSO from DT_NEEDED

Ben Collins bcollins@debian.org
Wed May 9 04:51:00 GMT 2001


On Wed, May 09, 2001 at 11:36:37AM +0200, Jakub Jelinek wrote:
> On Tue, May 08, 2001 at 09:30:54PM -0700, H . J . Lu wrote:
> > On Tue, May 08, 2001 at 09:25:42PM -0700, Ulrich Drepper wrote:
> > > "H . J . Lu" <hjl@lucon.org> writes:
> > > 
> > > > glibc 2.2.3 changes atexit from default to hidden. DSOs with
> > > > unversioned references to atexit fail to link if they are loaded
> > > > in via a DT_NEEDED entry. This patch makes it non-fatal. I will
> > > > check it in if I don't hear any objections by Thursday.
> > > 
> > > Why should the linker ignore bugs?  Don't work around problems users
> > > introduced.  Make them fix their code.
> > > 
> > 
> > DSOs compiled against glibc 2.0 may have unversioned references to
> > atexit. I won't blame people for compiling DSOs against glibc 2.0.
> 
> Are you sure it does not work or is it just a guess?
> I've just compiled a program using atexit on a glibc 2.0.7 system (RHL 5.2),
> plus a program using shared library which uses atexit on the same box, moved
> them to glibc 2.2.3 box (both the program and DSO have unversioned atexit
> reference, glibc has atexit@GLIBC_2.0 only) and they work very well.
> 

But can you link against this 2.0.7 compiled DSO on the 2.2.3 system? I
think that is what HJ is getting at.

Ben

-- 
 -----------=======-=-======-=========-----------=====------------=-=------
/  Ben Collins  --  ...on that fantastic voyage...  --  Debian GNU/Linux   \
`  bcollins@debian.org  --  bcollins@openldap.org  --  bcollins@linux.com  '
 `---=========------=======-------------=-=-----=-===-======-------=--=---'



More information about the Binutils mailing list