在Ubuntu上使用Visual Studio Code调试C++代码
在Ubuntu上使用Visual Studio Code调试C++代码,并且使用CMake进行构建,可以按照以下步骤进行配置:
1. 安装必要的工具
确保你已经安装了以下工具:
- CMake: 用于构建项目
- GCC/G++: 用于编译C++代码
- gdb: 用于调试
可以通过以下命令安装这些工具:
sudo apt update
sudo apt install build-essential cmake gdb
2. 安装Visual Studio Code及其插件
如果还没有安装VS Code,可以通过以下命令安装:
sudo snap install --classic code
安装完VS Code后,打开它,并安装以下插件:
- C++ (ms-vscode.cpptools): 主要用于C++的编程支持,包括调试、IntelliSense等。
- CMake Tools (ms-vscode.cmake-tools): 支持CMake项目的配置、生成和调试。
3. 创建CMake项目
创建一个基本的CMake项目结构:
mkdir MyCMakeProject
cd MyCMakeProject
在项目目录下创建以下文件和文件夹:
CMakeLists.txt
这是你的CMake配置文件,用于指定构建过程。
cmake
cmake_minimum_required(VERSION 3.10)
# 项目名称
project(MyCMakeProject)
# 设置C++标准
set(CMAKE_CXX_STANDARD 14)
# 指定可执行文件生成路径
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
# 添加源文件
add_executable(MyExecutable main.cpp)
main.cpp
你的主C++代码文件:
#include <iostream>
int main() {
std::cout << "Hello, CMake!" << std::endl;
return 0;
}
4. 配置VS Code调试
CMakeSettings.json
在项目根目录下创建一个文件CMakeSettings.json
,用于配置CMake生成文件的路径和构建类型。
json
{
"configurations": [
{
"name": "Linux-Debug",
"generator": "Unix Makefiles",
"configurationType": "Debug",
"buildRoot": "${projectDir}/build/${name}",
"installRoot": "${projectDir}/install/${name}",
"cmakeCommandArgs": "",
"buildCommandArgs": "-j8",
"ctestCommandArgs": ""
}
]
}
launch.json
用于配置VS Code调试器。按下Ctrl + Shift + P
,选择CMake: Add Debug Configuration
,VS Code会自动生成一个launch.json
文件,或你可以手动创建.vscode/launch.json
:
json
{
"version": "0.2.0",
"configurations": [
{
"name": "C++ Debug",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/build/Linux-Debug/bin/MyExecutable",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "build",
"miDebuggerPath": "/usr/bin/gdb",
"setupCommands": [
{
"text": "set substitute-path /mnt/c/ /",
"description": "For Windows debugging",
"ignoreFailures": true
}
],
"logging": {
"moduleLoad": false,
"programOutput": true,
"trace": false,
"engineLogging": false
}
}
]
}
5. 配置VS Code任务
tasks.json
tasks.json
文件用于配置构建任务。可以通过在VS Code命令面板中输入Tasks: Configure Default Build Task
来生成,或者手动创建.vscode/tasks.json
文件:
json
{
"version": "2.0.0",
"tasks": [
{
"label": "build",
"type": "shell",
"command": "cmake",
"args": [
"--build",
"${workspaceFolder}/build/Linux-Debug"
],
"group": {
"kind": "build",
"isDefault": true
},
"problemMatcher": ["$gcc"],
"detail": "Generated by VS Code"
}
]
}
6. 编译和调试
- 按
Ctrl + Shift + B
编译项目。 - 在VS Code中按
F5
启动调试器。
这将编译你的项目并启动调试器,你可以在main.cpp
中设置断点并开始调试。
通过上述配置,你可以在Ubuntu上使用Visual Studio Code进行C++项目的开发、构建和调试。