文章目录
- CMake常见的预定义变量
- CMake variables官方文档
CMake常见的预定义变量
在 CMake 中,有一些常见的预定义变量,它们提供了有关项目、目录结构和构建环境的信息。这些变量可用于设置路径、传递参数、以及进行其他与构建过程相关的操作。
以下是一些常见的 CMake 变量:
-
CMAKE_SOURCE_DIR:
- 描述:项目顶层目录的绝对路径。
- 使用示例:
${CMAKE_SOURCE_DIR}/src
-
CMAKE_BINARY_DIR:
- 描述:构建目录的绝对路径。
- 使用示例:${CMAKE_BINARY_DIR}/bin
CMAKE_BINARY_DIR
是 CMake 中的一个预定义变量,表示当前项目的二进制(构建)目录的绝对路径。 这个变量用于指定构建目标文件的位置。
-
CMAKE_CURRENT_SOURCE_DIR:
- 描述:当前处理的 CMakeLists.txt 文件所在的目录的绝对路径。
- 使用示例:
${CMAKE_CURRENT_SOURCE_DIR}/src
-
CMAKE_CURRENT_BINARY_DIR:
- 描述:当前处理的 CMakeLists.txt 文件的构建目录的绝对路径。
- 使用示例:
${CMAKE_CURRENT_BINARY_DIR}/bin
-
CMAKE_INCLUDE_CURRENT_DIR:
- 描述:将当前源文件目录添加到
include_directories()
中。 - 使用示例:
include_directories(${CMAKE_INCLUDE_CURRENT_DIR})
- 描述:将当前源文件目录添加到
-
CMAKE_MODULE_PATH:
- 描述:包含额外的 CMake 模块的目录。
- 使用示例:
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake")
-
CMAKE_LIBRARY_OUTPUT_DIRECTORY:
- 描述:动态链接库的输出目录。
- 使用示例:
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
-
CMAKE_ARCHIVE_OUTPUT_DIRECTORY:
- 描述:静态库的输出目录。
- 使用示例:
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
-
CMAKE_RUNTIME_OUTPUT_DIRECTORY:
- 描述:可执行文件的输出目录。
- 使用示例:
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
- CMAKE_CXX_COMPILER_ID:
- 描述:C++ 编译器的标识符。
- 使用示例:
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
CMake variables官方文档
可以在 CMake 官方文档中找到更多的信息:CMake - Variables。