ZBLOG

linux 下 vscode 怎么调试c++ 程序

在 Linux 下使用 VS Code 调试 C++ 程序,需要配置 编译环境调试插件launch.json 文件。以下是详细步骤:


1. 安装必要工具

(1) 安装编译器和调试器

# Ubuntu/Debian
sudo apt update
sudo apt install g++ gdb make cmake

# CentOS/RHEL
sudo yum install gcc-c++ gdb make cmake

(2) 安装 VS Code 插件


2. 创建 C++ 项目

假设项目结构如下:

my_project/
├── src/
│   └── main.cpp
├── include/
└── .vscode/
    ├── tasks.json   # 编译任务配置
    └── launch.json  # 调试配置

(1) 示例代码

编辑 src/main.cpp

#include <iostream>
using namespace std;

int main() {
    int a = 5, b = 3;
    cout << "a + b = " << a + b << endl;
    return 0;
}

3. 配置编译任务

.vscode/tasks.json 中定义如何编译代码:

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "Build C++",
            "type": "shell",
            "command": "g++",
            "args": [
                "-g",               // 生成调试信息
                "${file}",          // 当前文件
                "-o", 
                "${fileDirname}/${fileBasenameNoExtension}" //输出可执行文件路径
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "problemMatcher": ["$gcc"]
        }
    ]
}

快捷键:按 Ctrl+Shift+B 触发编译。


4.配置调试器

.vscode/launch.json中设置调试参数:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) Launch",     //配置名称 
            "type": "cppdbg",           //调试类型(C++)
            "request": "launch",        //启动模式 
            "program": "${fileDirname}/${fileBasenameNoExtension}", //可执行文件路径 
            "args": [],                 //命令行参数 
            "stopAtEntry": false,       //是否在入口暂停 
            "cwd": "${workspaceFolder}",//工作目录 
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",           //使用GDB调试器 
           "setupCommands":[{"description":"启用整齐打印","text":"-enable-pretty-printing","ignoreFailures”:true}]
         }
     ]
}

5.开始调试

  1. 编译代码:按 Ctrl+Shift+B
  2. 设置断点:点击代码行号左侧。
  3. 启动调试:按 F5或点击“运行和调试”侧边栏按钮。

6.CMake项目配置(可选)

如果使用 CMake,需额外步骤: 1.创建CMakeLists.txt:

cmake_minimum_required(VERSION3.10)
project(MyProject)
add_executable(my_program src/main.cpp)

2.VS Code中操作:
-打开包含CMakeLists.txt的文件夹。
-按Ctrl+Shift+P输入“CMake:Configure”选择编译器(如GCC)。
-按F5自动生成并关联调试配置。


常见问题排查

问题 解决方案
找不到头文件 .vscode/c_cpp_properties.json中设置包含路径(includePath)
GDB权限错误 运行命令:echo"set startup-with-shell off">~/.gdbinit
无法进入STL源码 安装STL开发包:sudo apt install libstdc++6-dbg

如果需要更复杂的多文件项目或库链接配置,可以进一步说明需求!


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=23365

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?