VS Code 使用 clang++ 编译,使用 cppvsdbg 或 lldb 调试的配置方法

需要安装的

VS Code

LLVM

VS Code 需要安装的插件:

C/C++(用来配置 c_cpp_properties.json)

CodeLLDB(如果你要用 lldb 调试,那么这个插件就需要安装,用来连接到 lldb 调试器)

流程

我们都知道配置编译器要设置三个 json,task, launch, c_cpp_properties.json

task.json 直接通过 terminal - configure default build task - C/C++: clang++.exe build active file 设置

launch.json 不再是通过 C/C++: clang++.exe build and debug active file 设置,这样得到的是使用 cppdbg 调试的,我试了调试会失败,只能使用 cppvsdbg 或 lldb 调试

要使用 cppvsdbg 的话,launch.json 如下:

{
    // Utilisez IntelliSense pour en savoir plus sur les attributs possibles.
    // Pointez pour afficher la description des attributs existants.
    // Pour plus d'informations, visitez : https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(Windows) Launch",
            "type": "cppvsdbg",
            "request": "launch",
            "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "console":"newExternalWindow",
        }
    ]
}

其实也就是把 type 改了

如果要用 lldb 也就是把 type 改一下,然后要装 CodeLLDB 这个插件。只是有些选项不一样,所以不能用了

{
    // Utilisez IntelliSense pour en savoir plus sur les attributs possibles.
    // Pointez pour afficher la description des attributs existants.
    // Pour plus d'informations, visitez : https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "type": "lldb",
            "request": "launch",
            "name": "Launch",
            "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
            "args": [],
            "cwd": "${workspaceFolder}",
            "console": "integratedTerminal"
        }
    ]
}

c_cpp_properties.json 直接在 C/C++ 插件的设置中选择 clang++ 就好了