Reputation: 1405
After compiling on Cygwin with gcc or clang, ld complains about
/usr/bin/ld: warning: --export-dynamic is not supported for PE+ targets, did you mean --export-all-symbols?
Changing the linkerflag as suggested fixes this behavior, but I am not sure if this is correct. Therefore the question is simple:
What is the difference betwen --export-dynamic
and --export-all-symbols
?
Upvotes: 3
Views: 6598
Reputation: 33694
--export-dynamic
is for ELF targets:
Note that this option is specific to ELF targeted ports. PE targets support a similar function to export all symbols from a DLL or EXE; see the description of ‘
--export-all-symbols
’ below.
--export-all-symbols
is for PE targets:
This option is specific to the i386 PE targeted port of the linker
It would probably have been possible to subsume both under --export-dynamic
(because that was there first), but the implementation is completely different, and this leaked out to the ld
command line interface.
Upvotes: 2