在Windows上的VS Code中使用Clang,并使用lldb进行调试

目录

  1. 1. 安装 Clang
  2. 2. 配置 VS Code

安装 Clang

前置条件:用mingw 的安装器下载 mingw 的 gcc 和 g++的软件包。

官网上标注的 llvm 仓库下载基于 mingw 的 Clang 的文件。选择最新的 release 版本,找到和你电脑对应的架构和系统下载。

我的电脑是 Win10 x64版本,这里选择了 llvm-mingw-日期-msvcrt-x86_64.zip这个包。下载完成后,打开这个压缩包,将其解压到某个好记的位置上。我解压到了 C:\clang目录下。

到这里,如果不需要在命令行或 PowerShell 中直接调用 clang,那么就这步就算完成了。如果有对应需要的话,就去添加一下对应的 PATH 变量。

配置 VS Code

创建一个文件夹,作为我们要在之后编写 C++代码的储存库。在这个文件夹中再创建 .vs文件夹。

在这个文件夹下创建

三个文件,分别命名为

  • launch.json
  • tasks.json
  • c_cpp_properties.json

这里提供一份样例配置供参考

launch.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
"version": "0.2.0",
"configurations": [
{
"name": "clang++ - 生成和调试活动文件",
"type": "lldb",
"request": "launch",
"program": "${fileDirname}/exec/${fileBasenameNoExtension}.exe",
"args": [],
"cwd": "${fileDirname}/exec/",
"preLaunchTask": "C/C++: clang++ 生成活动文件"
}
]
}
task.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: clang++ 生成活动文件",
"command": "C:/clang/bin/clang++",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}/exec/${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": ["$gcc"],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "调试器生成的任务。"
}
],
"version": "2.0.0"
}
c_cpp_properties.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**",
"C:/clang/include",
"C:/clang/include/c++/v1",
"C:/MinGW/lib/gcc/mingw32/6.3.0/include/c++",
"C:/MinGW/lib/gcc/mingw32/6.3.0/include/c++/parallel",
"C:/MinGW/lib/gcc/mingw32/6.3.0/include/c++/mingw32"
],
"defines": [],
"compilerPath": "C:/clang/bin/clang.exe",
"cStandard": "c23",
"cppStandard": "c++23",
"intelliSenseMode": "windows-clang-x64",
"configurationProvider": "ms-vscode.makefile-tools"
}
],
"version": 4
}

注:如果直接套用这三个配置文件,那么还需要在最开始创建的文件夹下新建名为 exec的文件夹,用来存放编译后的可执行文件。

添加完这三个文件后,用 VS Code 打开此文件夹下的 cpp文件,按下 F5就可以编译并运行了。