XCODE_LINK_BUILD_PHASE_MODE¶
在 3.19 版本加入.
当使用 Xcode 生成器时,要链接的库将在 Xcode 项目文件中指定,使用“Link Binary With Libraries”构建阶段或直接作为链接器标志。前者允许 Xcode 管理构建路径,这在创建 Xcode 存档时可能是必需的,因为它可能使用与常规构建不同的构建路径。
此属性控制“将二进制文件与库链接”构建阶段用于应用程序包、可执行文件、共享库、共享框架或模块库的目标。
可能的值是:
NONE库将通过直接指定链接器标志来链接。BUILT_ONLY“Link Binary With Libraries”构建阶段将用于在以下条件下链接到另一个目标:要链接到的目标是一个常规的非导入、非接口库目标。
正在构建的目标的输出目录未更改其默认值(请参阅
RUNTIME_OUTPUT_DIRECTORY和LIBRARY_OUTPUT_DIRECTORY)。
KNOWN_LOCATION“Link Binary With Libraries”构建阶段将用于在与BUILT_ONLY相同的条件下链接到另一个目标,并且:导入的库目标,类型为“UNKNOWN”的目标除外。
直接用路径指定的任何非目标库。
对于所有其他情况,将通过直接指定链接器标志来链接库。
警告
使用“Link Binary With Libraries”链接的库在通过常规链接器标志链接的库之后链接。当不同的静态库包含具有相同名称的符号时,应考虑此顺序,因为前者优先于后者。
警告
如果两个或多个目录包含具有相同文件名的库,并且某些库是从这些目录链接的,则库搜索路径查找将最终从第一个目录链接库。这是 Xcode 的已知限制。
如果在创建目标时设置了此属性,则该属性由 CMAKE_XCODE_LINK_BUILD_PHASE_MODE 变量的值初始化。