ld --auto-imports

Robert Collins robert.collins@itdomain.com.au
Mon Jun 11 01:09:00 GMT 2001


----- Original Message -----
From: "Ralf Habacker" <Ralf.Habacker@saght.tessag.com>
To: "Binutils" <binutils@sources.redhat.com>
Cc: "Robert Collins" <robert.collins@itdomain.com.au>
Sent: Monday, June 11, 2001 6:07 PM
Subject: AW: ld --auto-imports


> > > I have tried to mark this with ^^^^, but there are tabs in my
mail, so
> > they
> > > don't fit the correct columns.
> > >
> > > > However it works with -lcygwin first in the link line. Do you
know
> > why
> > > > that fixes it? Maybe more symbols need to be stripped... I'll
roll
> > my
> > > > own and have a look and see why -lcygwin is needed (it's not
needed
> > with
> > > > an unaltered ld).
> > > The reason is, that hello.dll uses _cygwin_dll_entry@12 from
greet.dll
> > and
> > > not from cygwin1.dll. This doesn't work, but I don't know why.
> >
> > Yes - I tracked that down just now myself :]. Use
> > -Wl,--exclude-symbols=_cygwin_dll_entry@12
> >  on the .dll link line, and you will no longer need -lcygwin in the
link
> > command.
> >
> > Thats fixed the segfaulting for me, and I'm back to libtool. I
suspect
> > that there are a number of symbols that will need to be excluded
from
> > automatic exporting, and I'll generate a patch to ld that will
include
> > Pauls' patch, and exclude those extra symbols.
>
> I have seens, that impure_ptr is although used in this way. Should
this be
> excluded too ? It seems, that is doesn't matter, but I'm not familiar
with
> the internal of cygwin1.dll
>
> Ralf
>

_cygwin_crt0_common@8
_cygwin_noncygwin_dll_entry@12
_fmode
_impure_ptr
cygwin_attach_dll
cygwin_premain0
cygwin_premain1
cygwin_premain2
cygwin_premain3
environ

are also candidates for not being automatically exported.

I haven't looked into this with any depth yet. Once I've got libtool
passing the entire test suite, I'll be looking at this part of it more.

Rob



More information about the Binutils mailing list