Eclipse/MinGW/GCC DLL entry points
Ian Lance Taylor
iant@google.com
Fri Aug 21 19:37:00 GMT 2009
mavatar <acampbellb@hotmail.com> writes:
> I am trying to port a DLL project from MSVC to Eclipse/MinGW. I was able to
> build the DLL with Eclipse/MinGW and the resulting shared library was much
> larger than the same library built with MSVC. I found a "MinGW C Linker"
> option in project properties to "Omit all symbol information (-s)" after
> setting this option the DLL file size reduce by almost 200KB, but it still
> was >100KB bigger then the MSVC version.
>
> After inspecting the DLL with the MS "Dependency Walker" utility I noticed
> that the DLL produced by MinGW has entry points defined for every function
> in the DLL, including those that don't have the following descriptor before
> them.
>
> #define MY_API __declspec(dllexport)
>
> I would expect that ONLY function that have MY_API before them would be
> defined as an entry point, but this is not the case all function are defined
> as entry points. How is this possible?
>
> As a side note I do not provide a *.DEF file to the linker. I tried this and
> it did not seem to make a difference.
>
> Any ideas?
I don't know the answer to this question. I do know that this is not an
issue with gcc proper. You are much more likely to get an answer if you
ask on the cygwin@cygwin.com mailing list (because this is Windows
related) or the binutils@sourceware.org mailing list (because this is
linker related).
Ian
More information about the Gcc-help
mailing list