CMAKE_<LANG>_IMPLICIT_LINK_DIRECTORIES¶
检测到语言 <LANG>
的隐式链接器搜索路径。
当编译器调用链接器时,通常会传递包含语言运行时库和默认库搜索路径的目录。这些路径是编译器语言的隐式链接器搜索目录。
对于 project()
或 enable_language()
命令启用的每种语言,CMake 都会自动检测这些目录,并在该变量中报告结果。 CMAKE_<LANG>_IMPLICIT_LINK_DIRECTORIES_EXCLUDE
环境变量可以设置为从自动检测的结果中排除特定目录。
链接到静态库时,针对静态库中使用的每种语言(除了用来进行链接的编译器的语言),CMake 将添加此变量中的隐式链接目录。对于导入的静态库,IMPORTED_LINK_INTERFACE_LANGUAGES
目标属性列出了需要隐式链接信息的语言。如果任何语言未启用,那么 CMAKE_<LANG>_IMPLICIT_LINK_DIRECTORIES
变量的值可以由项目来提供。或者,toolchain file
可以将该变量设置为特定工具链已知的值。启用语言时该值将被覆盖,或用作后备。
某些工具链会从诸如 LIBRARY_PATH
的环境变量中读取隐式目录。如果使用这样的环境变量,那么在一个给定的构建树中操作时保持其值一致,因为 CMake 会保存首次创建构建树时检测到的值。
如果策略 CMP0060
未设置为 NEW
,那么当此目录中的某个库以绝对路径提供给 target_link_libraries()
时,CMake 为了历史目的将在链接行上生成 -l<name>
形式。
另请参阅 CMAKE_<LANG>_IMPLICIT_LINK_LIBRARIES
变量。