the command-line interface of the cross-platform buildsystem generator CMake.
cmake -help | --help
cmake -version | --version
cmake [option]... <sourceDIR>
cmake [option]... -S <sourceDIR> -B <buildDIR>
打印出cmake
命令的使用帮助。
打印出CMake
的版本信息。
生成某个构建工具
的配置文件
,并调用对应的构建工具
进行编译。
sourceDIR
是CMakeLists.txt
配置文件所在的目录。
示例:
cmake \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-G Ninja \
-Wno-dev \
-B build \
src
生成某个构建工具
的配置文件
,并调用对应的构建工具
进行编译。
sourceDIR
是CMakeLists.txt
配置文件所在的目录。
buildDIR
是用于生成构建工具
的配置文件
以及缓存的目录。该目录如果不指定,cmake
生成的产物就与源码混合在一起,这样不清晰。所以一定要设置一个buildDIR
。
示例:
cmake \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-G Ninja \
-Wno-dev \
-S src \
-B build.d
指定生成哪种配置文件
。
GENERATOR | 说明 |
---|---|
Unix Makefiles | 生成gmake的Makefile |
Ninja | 生成Ninja的build.ninja |
设置变量
的值
。
CMake
内置变量:
变量 | 类型 | 默认值 | 说明 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
CMAKE_SYSTEM_NAME | STRING | $(uname) | 指定编译后生成的产物运行在什么操作系统 上 | ||||||||||||
CMAKE_SYSTEM_PROCESSOR | STRING | $(uname -m) | 指定编译后生成的产物运行在什么CPU平台 上 | ||||||||||||
CMAKE_C_COMPILER | FILEPATH | /usr/bin/cc | 指定C编译器 | ||||||||||||
CMAKE_C_FLAGS | STRING | 设置C编译器的参数 | |||||||||||||
CMAKE_CXX_COMPILER | FILEPATH | /usr/bin/c++ | 指定C++编译器 | ||||||||||||
CMAKE_CXX_FLAGS | STRING | 设置C++编译器的参数 | |||||||||||||
CMAKE_ASM_COMPILER | FILEPATH | /usr/bin/as | 指定汇编器 | ||||||||||||
CMAKE_ASM_FLAGS | STRING | 设置汇编器的参数 | |||||||||||||
CMAKE_LINKER | FILEPATH | /usr/bin/ld | 指定ld | ||||||||||||
CMAKE_AR | FILEPATH | /usr/bin/ar | 指定ar | ||||||||||||
CMAKE_RANLIB | FILEPATH | /usr/bin/ranlib | 指定ranlib | ||||||||||||
CMAKE_STRIP | FILEPATH | /usr/bin/strip | 指定strip | ||||||||||||
CMAKE_OBJDUMP | FILEPATH | /usr/bin/objdump | 指定objdump | ||||||||||||
CMAKE_OBJCOPY | FILEPATH | /usr/bin/objcopy | 指定objcopy | ||||||||||||
CMAKE_READELF | FILEPATH | /usr/bin/readelf | 指定readelf | ||||||||||||
CMAKE_NM | FILEPATH | /usr/bin/nm | 指定nm | ||||||||||||
CMAKE_ADDR2LINE | FILEPATH | /usr/bin/addr2line | 指定addr2line | ||||||||||||
CMAKE_DLLTOOL | FILEPATH | /usr/bin/dlltool | 指定dlltool | ||||||||||||
CMAKE_TOOLCHAIN_FILE | FILEPATH | 指定公共配置的CMakeLists.txt | |||||||||||||
CMAKE_VERBOSE_MAKEFILE | BOOL | OFF | 是否在生成的Makefile中开启.SILENT 指令 | ||||||||||||
CMAKE_COLOR_MAKEFILE | BOOL | ON | 是否彩色输出Makefile中的执行命令 | ||||||||||||
CMAKE_INSTALL_PREFIX | PATH | /usr/local/ | 指定安装目录 | ||||||||||||
CMAKE_BUILD_TYPE | STRING | Debug |
|