VSCode远程调试Linux程序

VS 安装CodeRunner插件

菜单→添加配置→lunch.json中设置如下:

program填入要调试的文件

bash 复制代码
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "gdb renderPng",
      "type": "cppdbg",
      "request": "launch",
      "program": "${workspaceFolder}/renderPng",
      "args": [],
      "stopAtEntry": false,
      "cwd": "${fileDirname}",
      "environment": [],
      "externalConsole": false,
      "MIMode": "gdb",
      "setupCommands": [
          {
              "description": "为 gdb 启用整齐打印",
              "text": "-enable-pretty-printing",
              "ignoreFailures": true
          },
          {
              "description": "将反汇编风格设置为 Intel",
              "text": "-gdb-set disassembly-flavor intel",
              "ignoreFailures": true
          }
      ]
    },
  ]
}
如果需要sudo权限调试修改如下:
bash 复制代码
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "gdb renderPng",
      "type": "cppdbg",
      "request": "launch",
      "program": "${workspaceFolder}/renderPng",
      "args": [],
      "stopAtEntry": false,
      "cwd": "${fileDirname}",
      "environment": [],
      "externalConsole": false,
      "MIMode": "gdb",
      "miDebuggerPath":"/home/pozhu/Desktop/sudo_gdb",
      "setupCommands": [
          {
              "description": "为 gdb 启用整齐打印",
              "text": "-enable-pretty-printing",
              "ignoreFailures": true
          },
          {
              "description": "将反汇编风格设置为 Intel",
              "text": "-gdb-set disassembly-flavor intel",
              "ignoreFailures": true
          }
      ]
    },
  ]
}

新建脚本sudo_gdb

bash 复制代码
sudo /usr/bin/gdb $@

chmod 777 sudo_gdb

路径填在字段miDebuggerPath

调试快捷键

继续 / 暂停 F5

跳过 F10

跳入 F11

跳出 Shift+F11

重启 Ctrl+Shift+F5

停止 Shift+F5

添加终端任务:

菜单→终端→添加任务→新建tasks.json

内容如下:

相关推荐
wdfk_prog3 小时前
[Linux]学习笔记系列 -- [drivers][input]input
linux·笔记·学习
盟接之桥3 小时前
盟接之桥说制造:引流品 × 利润品,全球电商平台高效产品组合策略(供讨论)
大数据·linux·服务器·网络·人工智能·制造
忆~遂愿4 小时前
ops-cv 算子库深度解析:面向视觉任务的硬件优化与数据布局(NCHW/NHWC)策略
java·大数据·linux·人工智能
湘-枫叶情缘4 小时前
1990:种下那棵不落叶的树-第6集 圆明园的对话
linux·系统架构
Fcy6485 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满5 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠5 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
Gary Studio5 小时前
rk芯片驱动编写
linux·学习
mango_mangojuice5 小时前
Linux学习笔记(make/Makefile)1.23
java·linux·前端·笔记·学习
Harvey9035 小时前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s