cmake 与源码工程的关系:

image.png
cmake的工作流程:

image.png
第一步:Configure(配置)
- 在项目根目录添加CMakeLists.txt文件
- 编写配置信息
第二步:Generate(生成)

image.png

image.png
利用配置文件,根据不同的平台,生成构建文件(即本平台的项目文件)
CMake(CMakeList.txt)=构建文件(Makefile)/Ninja(Ninja)/sln(visualstudio)
命令:cmake .
- CMake根据本地环境或指定文件类型,生成相应的构建文件(项目文件)
对于这些不同的 Makefiles,实际编译中使用的工具是不同的。
例如,在Borland Makefile 中,用于编译 C++ 文件的编译器称为 bcc32。
而 Nmake是与微软 Visual Studio 捆绑的 make 工具,使用的编译器则是微软 C++ 编译器cl。
- Borland Makefiles
- MSYS Makefiles
- MinGW Makefiles
- NMake Makefiles
- NMake Makefiles JOM
- Watcom WMake
Visual Studio 6
Visual Studio 7
Visual Studio 7 .NET 2003
Visual Studio 8 2005
Visual Studio 9 2008
Visual Studio 10 2010
Visual Studio 11 2012
Visual Studio 12 2013
Visual Studio 14 2015
Xcode
更多信息
第三步:Build(编译)
使用本地编译器对构建文件进行编译生成可执行应用或DLL.
本地编译器(构建文件)=本地可执行程序(dll)
命令:cmake --build
- 根据目标平台,配置和指定适当的编译器(如GCC、Clang、MSVC等)。
- 设置编译选项,如优化级别、调试信息生成、特定于平台的特性等。
- 调用编译器进行编译,同时可能需要设置链接选项,如静态或动态链接库的选择。
- 编译完成后,生成可执行文件或DLL,准备部署或进一步的测试。
第四步:Debug(调试)--此步严格上来说不属于Cmake参与的范围
- 根据目标平台选择合适的调试工具(如gdb、lldb、Visual Studio Debugger等)。
- 配置调试环境,包括设置调试选项和调试器参数。
- 开始调试会话,使用调试工具进行代码调试,包括但不限于:
- 设置断点以暂停程序执行
- 单步执行以逐行检查代码
- 检查和修改变量的值
- 监视表达式和变量的变化
- 分析程序性能和内存使用情况
- 根据调试结果,修复发现的问题,并迭代改进代码。