一、安装 C++ 开发环境
- 安装 MSYS2
- 更新 MSYS2
pacman -Syu
- 在开始菜单中运行 MSYS2 MSYS,更新其余的基本包
pacman -Su
- 安装 C++ 开发环境:
- clang++ x64 gdb:
pacman -S --needed base-devel mingw-w64-ucrt-x86_64-clang mingw-w64-ucrt-x86_64-gdb
- g++ gdb:
pacman -S --needed base-devel mingw-w64-x86_64-toolchain
- clang++ lldb:
pacman -S --needed base-devel mingw-w64-clang-x86_64-lldb
这个库会把 clang clang++ 等库安装到 msys64/clang64/bin 目录,但是 lldb 在 Windows 上的调试效果不如 gdb - clang++ x86:
pacman -S --needed base-devel mingw-w64-i686-clang
- clang++ x64 gdb:
- 添加环境变量
D:\msys64\ucrt64\bin
- 检查是否安装成功
clang++ --version
g++ --version
gdb --version
pacman -Syu // 更新整个系统
pacman -Su // 更新已安装的包
pacman -Ss 关键字 // 搜索含关键字的包
pacman -S 包名 // 安装包,也可以同时安装多个包,只需以空格分隔包名即可
pacman -Rs 包名 // 删除包及其依赖
pacman -R 包名 // 删除包
二、配置 VS Code
主要是修改 task.json 和 launch.json 两个配置文件;
新版本的 VS Code 按 F5
会自动创建这两个配置文件,稍做修改就可以了;
task.json 示例:
{
"tasks": [
{
"type": "cppbuild",
"label": "Build",
"command": "clang++.exe",
"args": [
"-fdiagnostics-color=always",
"-g",
// "${file}", // 单文件
"${fileDirname}\\*.cpp", // 多文件
"-o",
"${workspaceRoot}\\bin64\\${fileBasenameNoExtension}.exe",
"-ggdb3", // 生成和调试有关的信息
"-Wall", // 开启额外警告
"-static-libgcc", // 静态链接
"-std=c++17", // 使用c++17标准
"-finput-charset=UTF-8", // 输入编译器文本编码 默认为UTF-8
"-D _USE_MATH_DEFINES"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": "build",
"detail": "调试器生成的任务。"
}
],
"version": "2.0.0"
}
launch.json 示例:
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Debug",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceRoot}\\bin64\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${fileDirname}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "gdb.exe",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "Build"
}
]
}