XCODE_LINK_BUILD_PHASE_MODE¶
3.19 版本新增。
当使用 Xcode
生成器时,要链接的库将在 Xcode 项目文件中指定,可以使用“Link Binary With Libraries”构建阶段,或直接指定为链接器标志。前者允许 Xcode 管理构建路径,这在创建 Xcode 归档时可能是必要的,因为它可能使用与常规构建不同的构建路径。
此属性控制用于应用程序包、可执行文件、共享库、共享框架或模块库的目标的“Link Binary With Libraries”构建阶段的使用。
可能的值为
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
变量的值初始化(如果已设置)。