-
下载vscode
-
安装c++插件
参考:C++ programming with Visual Studio Code
-
安装llvm,可以使用brew安装
-
配置llvm到系统环境变量中
-
编写c++代码
-
编写CMakeLists.txt文件(前提安装cmake)
cmake_minimum_required(VERSION 3.5)
project(vscode_cmake_debug)
设置可执行文件的输出路径
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
重点
set(CMAKE_BUILD_TYPE "Debug")
add_executable(main src/main.cpp)
-
生成vscode中c++的智能提示文件c_cpp_properties.json
可参考:https://code.visualstudio.com/docs/cpp/config-clang-mac
{
"configurations": [
{
"name": "Mac",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [],
"macFrameworkPath": [
"/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk/System/Library/Frameworks"
],
"compilerPath": "/opt/homebrew/opt/llvm/bin/clang",
"intelliSenseMode": "macos-clang-arm64"
}
],
"version": 4
}
- 生成vscode debug文件launch.json
具体可参考:Configure VS Code for Clang/LLVM on macOS
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Debug",
"type": "lldb",
"request": "launch",
"program": "${workspaceFolder}/cmake_debug/bin/main",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
//"preLaunchTask": "C/C++: g++ build active file",
//"miDebuggerPath": "lldb的路径"
}
]
}
其中部分字段配置可参考:
https://code.visualstudio.com/docs/editor/variables-reference
和Configure launch.json for C/C++ debugging in Visual Studio Code
因为已经采用cmake编译,所以launch中的preLaunchTask可以不用关联task了
参考文件:
c++程序的 cmake编译+vscode来debug 方法和步骤(ubuntu)_cmake 如何debug-CSDN博客