Cygwin 导出动态和导出所有符号之间的区别是什么?

Cygwin 导出动态和导出所有符号之间的区别是什么?,cygwin,ld,linker-flags,Cygwin,Ld,Linker Flags,在使用gcc或clang在Cygwin上编译后,ld抱怨 /usr/bin/ld: warning: --export-dynamic is not supported for PE+ targets, did you mean --export-all-symbols? 按照建议更改linkerflag可以修复此行为,但我不确定这是否正确。因此,问题很简单: --导出动态和--导出所有符号之间有什么区别?用于ELF目标: 请注意,此选项特定于ELF目标端口。PE目标支持从DLL或EXE导出所

在使用gcc或clang在Cygwin上编译后,ld抱怨

/usr/bin/ld: warning: --export-dynamic is not supported for PE+ targets, did you mean --export-all-symbols?
按照建议更改linkerflag可以修复此行为,但我不确定这是否正确。因此,问题很简单:

--导出动态
--导出所有符号
之间有什么区别?

用于ELF目标:

请注意,此选项特定于ELF目标端口。PE目标支持从DLL或EXE导出所有符号的类似功能;请参阅下面“
——导出所有符号”的说明

适用于PE目标:

此选项特定于链接器的i386 PE目标端口

可能可以将这两种方法都包含在
--export dynamic
下(因为这是第一个),但是实现完全不同,这会泄漏到
ld
命令行界面