在 Windows 系统下配置 VSCode + CMake + Ninja 进行 C++ 或 Qt 开发
在 Windows 系统下配置 VSCode + CMake + Ninja 进行 C++ 或 Qt 开发,是一个轻量级但功能强大的开发环境。下面我将分步骤详细说明如何搭建这个开发环境,支持纯 C++ 和 Qt 项目。
🧰 所需工具安装
1. 安装 Visual Studio Code(VSCode)
- 下载地址:https://code.visualstudio.com/
- 安装后建议安装以下扩展(推荐):
- C/C++(微软官方)
- CMake
- CMake Tools
- Ninja(可选)
- Qt Tools(用于 Qt 项目)
可直接搜索安装:
Extensions: Install Extension
(Ctrl+Shift+X
),输入关键词如CMake
,Qt
,C/C++
2. 安装 CMake
- 下载地址:https://cmake.org/download/
- 推荐使用图形化安装程序,并勾选“Add to system PATH”选项。
- 验证是否安装成功:
cmake --version
3. 安装 Ninja
- 下载地址:https://github.com/ninja-build/ninja/releases
- 下载
ninja.exe
,放到系统路径中(如C:\Windows\System32
)或添加到PATH
- 验证是否安装成功:
ninja --version
4. 安装编译器
方式一:MinGW-w64(推荐轻量级)
- 下载地址(推荐使用 MSYS2 提供的版本):
- https://sourceforge.net/projects/mingw-w64/files/ (这个官方链接提供的文件不能直接使用)
- https://github.com/niXman/mingw-builds-binaries/releases
- 安装后将其
bin
目录加入系统PATH
- 验证:
g++ --version
gcc --version
方式二:Visual Studio Build Tools(MSVC 编译器)
- 官网下载:https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2022
- 安装时选择 “C++ 构建工具”
- 需要使用
x64 Native Tools Command Prompt for VS
来调用编译器
5. 安装 Qt(仅用于 Qt 项目)
- 下载在线安装器:https://www.qt.io/download
- 推荐选择 Qt Online Installer
- 安装时选择:
- Qt 版本(如 Qt 6.5.x MinGW 11.2.0 64-bit)
- Qt Creator(可选)
- 安装完成后,确保 Qt 的 bin 路径加入系统
PATH
(如C:\Qt\Tools\mingw1120_64\bin
)
🛠️ 配置 VSCode + CMake + Ninja
1. 设置默认构建工具为 Ninja
打开 VSCode,按下 Ctrl+Shift+P
,输入并运行:
CMake: Configure
选择你的编译器(例如 MinGW GCC x86_64
),然后会自动生成 CMakeCache.txt
文件。
你也可以手动设置默认生成器,在 .vscode/settings.json
中添加:
{"cmake.generator": "Ninja","cmake.configureOnOpen": true,"cmake.buildDirectory": "${workspaceFolder}/build"
}
2. 基础目录结构示例
my_project/
├── CMakeLists.txt
├── src/
│ └── main.cpp
├── build/ (CMake 生成文件)
└── .vscode/├── settings.json├── tasks.json└── launch.json
3. 示例 CMakeLists.txt(C++ 项目)
cmake_minimum_required(VERSION 3.16)
project(MyApp)set(CMAKE_CXX_STANDARD 20)add_executable(myapp src/main.cpp)
4. 示例 CMakeLists.txt(Qt 项目)
cmake_minimum_required(VERSION 3.16)
project(QtApp)set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUI ON)find_package(Qt6 COMPONENTS Widgets REQUIRED)add_executable(QtAppsrc/main.cppsrc/mainwindow.cppsrc/mainwindow.hsrc/mainwindow.ui
)target_link_libraries(QtApp PRIVATE Qt6::Widgets)
5. 配置调试器(launch.json)
{"version": "0.2.0","configurations": [{"name": "GDB Debug","type": "cppdbg","request": "launch","program": "${workspaceFolder}/build/myapp.exe","args": [],"stopAtEntry": false,"cwd": "${workspaceFolder}","environment": [],"externalConsole": true,"MIMode": "gdb","miDebuggerPath": "C:\\msys64\\mingw64\\bin\\gdb.exe"}]
}
6. 配置任务(tasks.json)
{"tasks": [{"label": "CMake Configure","type": "shell","command": "cmake","args": ["-B", "${workspaceFolder}/build", "-G", "Ninja"],"group": { "kind": "build", "isDefault": true },"problemMatcher": ["$cmake"]},{"label": "CMake Build","type": "shell","command": "cmake","args": ["--build", "${workspaceFolder}/build"],"group": { "kind": "build", "isDefault": true },"problemMatcher": ["$cmake"]}],"version": "2.0.0"
}
✅ 使用流程总结
- 打开项目根目录(含
CMakeLists.txt
); - VSCode 会自动运行
CMake: Configure
(根据.vscode/settings.json
); - 按
Ctrl+Shift+B
构建项目; - 按
F5
启动调试; - 修改代码后重新构建即可运行新版本;
🧪 测试一个 Qt 项目(main.cpp)
#include <QApplication>
#include <QLabel>int main(int argc, char *argv[]) {QApplication app(argc, argv);QLabel label("Hello from Qt!");label.show();return app.exec();
}
确保你的 mainwindow.ui
、.h
、.cpp
文件也存在并被正确引用。
📝 小贴士
- 如果使用 MSVC 编译器,请确保从 VS 自带终端启动 VSCode;
- Qt 项目需要确保所有依赖库都在
PATH
或链接正确; - 可以使用
qmake
或 Qt Creator 作为替代方案,但 VSCode 更加轻便灵活; - 对于大型项目,可以结合
conan
或vcpkg
管理第三方库。