🧭 学习路径大纲(由浅入深)
第一阶段:基础入门(理解 CMake 的作用和基本语法)
-
什么是 CMake?它能做什么?
-
最小可运行 CMake 项目结构
-
CMakeLists.txt文件基础语法 -
常见命令讲解(如
cmake_minimum_required,project,add_executable等)
第二阶段:CMake 的构建流程与构建配置
-
构建目录(build 目录)与源码目录分离
-
生成 Makefile / Visual Studio / Ninja 等构建系统
-
编译选项(调试、发布)与
CMAKE_BUILD_TYPE -
设置 include 目录和源文件
第三阶段:模块化与复杂项目支持
-
如何组织大型项目(子模块、子项目、库)
-
使用
add_subdirectory与target_link_libraries -
编译动态库和静态库
-
使用
target_include_directories管理头文件路径
第四阶段:进阶功能
-
查找系统库和包(如
find_package、pkg_check_modules) -
使用 CMake 管理第三方库(如 Boost、OpenCV、Qt)
-
编写可移植的 CMake 脚本
-
生成安装包和配置安装规则
✅ 第一课:什么是 CMake?
🌟 1. CMake 是什么?
CMake 是一个跨平台的构建系统生成工具。它本身不进行编译,而是生成适用于不同平台(如 Makefile、Visual Studio 工程文件、Xcode 工程文件等)的构建文件,然后由具体构建系统来编译。
🌍 举例说明:
你写了个 main.cpp,希望编译它生成一个可执行程序:
// main.cpp
#include <iostream>
int main()
{
std::cout << "Hello, CMake!" << std::endl;
return 0;
}
传统方法你可能写一个手工的 Makefile。
用 CMake,只需要创建一个 CMakeLists.txt 文件:
cmake_minimum_required(VERSION 3.10)
project(HelloCMake)
add_executable(hello main.cpp)
然后:
mkdir build
cd build
cmake ..
make
输出:
[100%] Built target hello
你就能运行:
./hello
✍️ 练习任务:
-
新建一个目录
hello_cmake -
创建
main.cpp内容如上 -
创建
CMakeLists.txt内容如上 -
使用命令构建并运行
mkdir build
cd build
cmake ..
make
./hello
附:
✅ 生成完整的 CMake 入门练习包
你可以把以下结构保存为一个本地目录,例如叫 hello_cmake/:
hello_cmake/
├── CMakeLists.txt
├── main.cpp
└── README.txt
📄 1. main.cpp
#include <iostream>
int main() {
std::cout << "Hello, CMake!" << std::endl;
return 0;
}
📄 2. CMakeLists.txt
cmake_minimum_required(VERSION 3.10)
project(HelloCMake)
add_executable(hello main.cpp)
📄 3. README.txt(操作指南)
HelloCMake 使用指南(Windows)
1. 安装 CMake:https://cmake.org/download/
建议安装 GUI 版本,并在安装时勾选“添加到 PATH”。
2. 安装编译器:
推荐使用 Visual Studio(包含 MSVC 编译器):
下载链接:https://visualstudio.microsoft.com/zh-hans/vs/
在安装时勾选 “使用 C++ 的桌面开发”
3. 编译项目:
打开 PowerShell 或 cmd,进入 hello_cmake 文件夹,执行以下命令:
mkdir build
cd build
生成 Visual Studio 工程:
cmake .. -G "Visual Studio 16 2019"
或者如果你是 VS2022:
cmake .. -G "Visual Studio 17 2022"
构建项目:
cmake --build . --config Release
4. 运行程序:
.\Release\hello.exe
✅关于 Windows 的编译器选项
Windows 常见的 C++ 编译器有三种:
| 编译器 | 简介 | 使用建议 |
|---|---|---|
| MSVC | 微软的 Visual C++ 编译器,和 Visual Studio 集成,广泛用于 GUI 开发、Qt、MFC 等。 | ✅推荐使用,尤其适合你后续学习 Qt 开发 |
| MinGW(GCC) | Windows 上的 GCC 编译器版本,偏向 Linux 风格。 | 可用,但容易与 Qt 冲突(因为 Qt 在 Windows 上优先支持 MSVC) |
| Clang/LLVM | 类似 GCC 的现代编译器,Windows 上较少用。 | 适合做跨平台测试,不建议初学时使用 |
如何查看你本机是否安装了 MSVC?
方法一:命令行查看(打开 PowerShell)
cl
如果提示找不到命令,你还没装或没配置 MSVC。
方法二:看你是否安装了 Visual Studio
安装 Visual Studio(社区版免费),并选择 “使用 C++ 的桌面开发” 即可自动安装 MSVC。
✅ 总结与下一步建议
你现在可以:
-
保存练习包内容到
hello_cmake目录 -
安装 CMake + Visual Studio
-
按
README.txt指南进行构建测试
完成后,我们就可以进入下一课内容:【CMake基础入门教程】第二课:CMakeLists.txt 的基本语法与结构

601

被折叠的 条评论
为什么被折叠?



