Ubuntu下使用vscode+gdb图形化调试的文件配置
Linux下用vscode+gdb图形化调试C/C++程序的一些配置
linux用gdb命令行调试程序实在是太困难了,难以入手,所以记录下用VScode图形化调试C/C++程序的配置,以便以后忘记后来参考(多文件调试暂时没接触到)
- 步骤1:选择debug小虫子,点击运行和调试,中间会弹出窗口的,这个就不贴图了,我选择g++
- 步骤2:生成两个json文件需要做小量修改,具体看最下面
- 步骤3:修改完json文件后,先打好断点,再点击运行,可以看到有效果了
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
}
}
]
}