阅读量:132
在Ubuntu上调试C++代码可以通过多种工具和步骤来实现,以下是一些便捷的方法:
使用Visual Studio Code (VS Code)进行调试
- 安装VS Code和C/C++扩展:
- 下载并安装Visual Studio Code:VS Code下载页面
- 打开VS Code,进入扩展市场,搜索并安装“C/C++”扩展。VS Code C/C++扩展
- 配置调试环境:
- 在项目根目录下创建
.vscode文件夹。 - 在
.vscode文件夹中创建tasks.json和launch.json文件。
tasks.json用于配置编译任务:
{
"version": "2.0.0",
"tasks": [
{
"label": "build",
"type": "shell",
"command": "g++",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
launch.json用于配置调试任务:
{
"version": "0.2.0",
"configurations": [
{
"name": "g++",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}/${fileBasenameNoExtension}",
"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"
}
]
}
- 启动调试:
- 按下
F5键或点击工具栏上的绿色调试箭头图标启动调试会话。
使用GDB进行调试
- 安装GDB:
sudo apt update
sudo apt install gdb
- 编译代码:
在编译时添加
-g标志以包含调试信息:
g++ -g -o my_program my_program.cpp
- 启动GDB:
gdb my_program
- 设置断点:
break main
- 运行程序:
run
- 调试命令:
next:单步跳过函数调用step:单步进入函数continue:继续执行程序直到遇到下一个断点print variable_name:打印变量的值backtrace:显示当前调用堆栈
使用Valgrind进行内存调试
Valgrind是一套Linux下的仿真调试工具集合,特别擅长检测内存泄漏问题:
sudo apt install valgrind
valgrind --leak-check=yes ./my_program
使用WSL2进行远程调试(适用于Windows用户)
- 安装WSL2和VS Code:
- 在Windows上安装WSL2和VS Code。
- 使用
lxrunoffline工具简化WSL2的使用。
通过上述方法,你可以在Ubuntu上便捷地调试C++代码,选择适合你工作流程的工具和步骤,可以大大提高调试效率和代码质量。