This is the mail archive of the cygwin-apps@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Shared vs Static [WAS: Re: [general] some ideas & request for comments (LONG)]


On Wed, May 17, 2000 at 07:54:55AM +0000, Michael Ring wrote:
>>In '-Bstatic', you'd only look for 'libfoo.a' of course.
>>
>>--Chuck
>
>Why is the actual DLL the first thing that has to be searched?
>
>>From my understanding the first thing to use is the import-library, if it
>exists.
>
>Think about the cygwin1.dll example. If you would first try to link with the
>actual dll, you would run into an 'unresolved external' problem if some kind of
>name-mangling is done in the import-library.
>
>So search order should be:
>
>libfoo.dll.a foo.dll.a libfoo.dll foo.dll libfoo.a
>
>Correct or wrong ????

I'm not sure what name mangling has to do with this, but actually, there is
another reason to search the .a file before the .dll file.

libcygwin.a contains references to things in cygwin1.dll *and* it contains
"static" references.  If you link cygwin1.dll first you will get unresolved
symbols.  So, you can't do things this way.

cgf

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]