启用出口¶
指定可执行文件是否导出可加载模块的符号。
通常可执行文件不会导出任何符号,因为它是最终程序。可执行文件可以导出符号以供可加载模块使用。当此属性设置为 true 时,CMake 将允许其他目标使用 target_link_libraries 命令“链接”到可执行文件。在所有平台上,都会为链接到可执行文件的目标创建对可执行文件的目标级依赖项。可加载模块链接线上的可执行文件的处理因平台而异:
在基于 Windows 的系统(包括 Cygwin)上,“导入库”与可执行文件一起创建,以列出导出的符号。可加载模块链接到导入库以获取符号。
在 macOS 上,可加载模块使用“-bundle_loader”标志链接到可执行文件本身。
在 AIX 上,链接器“导入文件”与可执行文件一起创建,以在链接其他目标时列出要导入的导出符号。可加载模块链接到导入文件以获取符号。
在其他平台上,可加载模块只是简单地链接而不引用可执行文件,因为动态加载程序会在加载模块时自动绑定符号。
如果在创建目标时设置了此属性,则该属性由变量 CMAKE_ENABLE_EXPORTS 的值初始化。