CMake常用指令推荐

指令 描述 推荐 备注
include_directories 在构建目标之前,为所有的目标添加头文件搜索路径。 非 target-specific,会影响整个 CMake 项目的所有目标。
target_include_directories 为特定的构建目标添加头文件搜索路径。 target-specific,只影响指定的目标。
link_directories 在构建目标之前,添加库文件搜索路径。 非 target-specific,会影响之后定义的所有目标。但通常不推荐使用,因为它不提供精确的依赖关系。
target_link_libraries 为特定的构建目标链接一个或多个库。 target-specific,只影响指定的目标,并且可以指定私有(PRIVATE)、接口(INTERFACE)或公共(PUBLIC)链接。
add_definitions 添加编译器定义(如预处理器定义)。 非 target-specific,会影响整个 CMake 项目的所有目标。
target_compile_definitions 为特定目标添加编译器定义。 target-specific,允许为不同的 target 添加不同的编译器定义。
add_compile_options 添加编译器选项。 非 target-specific,会影响整个 CMake 项目的所有目标。
target_compile_options 为特定目标添加编译器选项。 target-specific,允许为不同的 target 定制编译选项。