Linux虚拟机,VSCode + GDB 调试配置:launch.json 模板

x86 本地调试:.vscode 目录下 launch.json 文件内容模板,

复制代码
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Debug",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/build_x86/HelloWorld",   //program 调试哪个程序:路径
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "/usr/bin/gdb",   //GDB调试器 路径
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ]
        }
    ]
}

虚拟机 + ARM 交叉编译 + GDB 远程调试:.vscode 目录下 launch.json 文件内容模板:

复制代码
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Debug ARM Remote",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/gdbtest", //ARM 可执行文件路径
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gdb", // ARM 版本 GDB
            "miDebuggerServerAddress": "192.168.137.50:2001",    // 远程服务器地址,开发板ip
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
            ]
        }
    ]
}

**远程调试:**启动开发板上的 gdbserver,输入命令: gdbserver 192.168.137.50:2001 gdbtest

点击 VSCode 上的"调试" ->"启动调试"按钮,等待连接成功。

相关推荐
用户83514140494914 分钟前
把日志和寄存器值喂给AI做故障定位,我的实际问法
linux·ubuntu
Ruiery38 分钟前
Linux 6.6内核内存管理深度解析(十七):vmalloc — 内核要“虚拟连续“就够:物理页逐个凑,页表来连
linux·运维·服务器
Escalating_xu44 分钟前
【Linux 网络编程】ARP 的具体过程与 ARP 欺骗:一条 IP → MAC 映射,怎样改变数据的去向?
linux·网络·tcp/ip
坚定的共产主义生产设备永不宕机1 小时前
服务器从裸机开始搭建ESXI虚拟机
linux·服务器·网络
刚入门的大一新生1 小时前
Linux-线程封装
linux·运维·服务器
god_cvz1 小时前
实践:Linux环境构建CTB工具(cesium-terrain-builder)
linux·gis·ctb
Android系统攻城狮1 小时前
Linux FFmpeg深度解析之av_dump_format调用流程与实战(十一)
linux·运维·服务器·ffmpeg·1024程序员节·音视频进阶
Eiceblue2 小时前
用 Python 给 Word 文档加水印:文字、图片与批量处理
开发语言·vscode·python·word
Android系统攻城狮2 小时前
Linux FFmpeg深度解析之avcodec_find_decoder调用流程与实战(十二)
linux·运维·服务器·ffmpeg·1024程序员节·音视频进阶
小白的码BUG之路2 小时前
K8s -- 启动一主二从节点
linux·运维·服务器