Ubuntu下使用vscode+gdb图形化调试的文件配置

Linux下用vscode+gdb图形化调试C/C++程序的一些配置


linux用gdb命令行调试程序实在是太困难了,难以入手,所以记录下用VScode图形化调试C/C++程序的配置,以便以后忘记后来参考(多文件调试暂时没接触到)

  • 步骤1:选择debug小虫子,点击运行和调试,中间会弹出窗口的,这个就不贴图了,我选择g++
步骤1
  • 步骤2:生成两个json文件需要做小量修改,具体看最下面
步骤2
  • 步骤3:修改完json文件后,先打好断点,再点击运行,可以看到有效果了
步骤3

launch.json文件配置(非权威理解)

{
    "version": "0.2.0",
    "configurations": [

        {
            "name": "(gdb) Launch",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceRoot}/a.out", //编译后生成的可执行文件名字
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}", //当前目录
            "environment": [],
            "externalConsole": false, //在vscode自带的终端运行,不打开外部终端
            "MIMode": "gdb", //用gdb来debug
            "preLaunchTask": "socket",//绑定task的名字,对应tasks.json文件的"label"
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "miDebuggerPath": "/usr/bin/gdb"//gdb的绝对路径
        }
    ]
}

tacks.json文件配置

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "socket", //Task的名字
            "type": "shell",
            "command": "g++", //和下面args连在一起就是 (g++ -g Mysocket.cpp -o a.out) linux默认生成可执行文件是a.out,可以改成自己自定义的
            "args": [
                "-g",
                "Mysocket.cpp",
                "-o",
                "${workspaceRoot}/a.out"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}
posted @ 2020-09-14 17:57  JoyooO  阅读(720)  评论(0编辑  收藏  举报