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
变量,则此属性由该变量的值初始化。