CMake构建流程为:编写CMakeLists.txt定义项目→创建build目录→运行cmake ..生成构建文件→执行cmake --build .编译→可选安装或测试,实现跨平台项目管理。

在C++项目中使用CMake构建系统,能有效管理编译流程、依赖关系和跨平台构建。下面介绍CMake构建项目的基本流程,帮助你快速上手。
1. 准备CMakeLists.txt文件
每个使用CMake的项目都必须有一个CMakeLists.txt文件,放在项目根目录下,定义项目的构建规则。
一个最简单的CMakeLists.txt示例如下:
cmake_minimum_required(VERSION 3.10)project(MyApp)
# 添加可执行文件,源文件为 main.cpp
add_executable(myapp main.cpp)
说明:
- cmake_minimum_required:指定所需最低CMake版本。
- project:定义项目名称。
- add_executable:将源文件编译成可执行程序。
2. 创建构建目录(推荐做法)
建议使用“外部构建”方式,避免编译文件污染源码目录。
立即学习“C++免费学习笔记(深入)”;
在项目根目录下执行:
mkdir buildcd build
3. 运行CMake生成构建系统
进入build目录后,运行CMake命令解析CMakeLists.txt并生成对应平台的构建文件(如Makefile或Visual Studio项目)。
cmake ..这里..表示CMakeLists.txt位于上一级目录。CMake会自动生成Makefile(Linux/macOS)或解决方案文件(Windows)。
如果想指定编译器或构建类型(如Release),可以加参数:
cmake .. -DCMAKE_BUILD_TYPE=Release4. 编译项目
生成构建文件后,就可以进行编译:
cmake --build .这条命令会调用底层构建工具(如make或MSBuild)完成编译。等价于在Linux下手动执行make。
也可以指定目标,比如只编译某个可执行文件:
cmake --build . --target myapp5. (可选)安装或测试
如果项目支持安装,可在CMakeLists.txt中添加install()指令,然后执行:
cmake --build . --target install对于有测试用例的项目,可启用CTest并运行:
ctest基本上就这些。CMake流程清晰:写配置 → 生成构建文件 → 编译 → 运行。掌握这个基本流程后,可以逐步学习更高级功能,如链接库、查找依赖、条件编译等。不复杂但容易忽略细节。











