This is the mail archive of the cygwin@sources.redhat.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: building dlls, C and C++


> Indexes are useful
> mainly for release management, because as long as each exported symbol keeps
> the same index across releases the users of the DLL do not have to re-link
> their applications when upgrading the DLL. 

Sort of.  It depends on whether the application was "linked by name" or
"linked by number".  Windows provides for both possibilities, but I am
not sure which one is used by gcc/ld or if one can specify which link
method to use.  Link by number gives an executable that loads a bit
faster, but prone to breakage when new dll's are released.  That's why
most of the packages I've released include .def files rather than
relying on --export-[all|dynamic] and/or __declspec(dllexport) alone,
just to be safe.

(All my information about link-by-name or link-by-number comes
secondhand from discussions on the libpng-developers mailing list.  I'm
no expert).

--Chuck

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com


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