持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第1天,点击查看活动详情
[toc]
简介
以前用vscode好好的,按
F5直接调试,自动生成c/c++的.vscode\lauch.json文件,调试很方便,后来换了台电脑突然不行了,不能自动生成包含cppgdb的lauch.json文件,百思不得其解,试了重装vscode,重装拓展,换了linux的发新版,都不行,网络上这方面遇到的人也不多,猜测是vscode本身或拓展更新了,或者就是奇奇怪怪的bug吧。。。
- 如果你不嫌麻烦,甚至可以复制下面的
lauch.json到你的项目中修改,当然,按下面的方法安装拓展对以后每次的调试更加方便{ "version": "0.2.0", "configurations": [ { "name": "C/C++ Runner: Debug Session", "type": "cppdbg", "request": "launch", "args": [], "stopAtEntry": false, "externalConsole": false, "cwd": "/home/kira/rpmbuild/BUILD/file-5.11/src", "program": "/home/kira/rpmbuild/BUILD/file-5.11/src/.libs/file", "MIMode": "gdb", "miDebuggerPath": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ] } ] }
注
遇到
lauch.json不会自动生成可能只是偶发的bug,如果正常按F5就可以使用,该方法对你来说就是P,在暂未有更好方法时,使用这个方法又不是不能用(滑稽)
安装拓展
操作
-
debug和release不用管,这里是编译的选项,如果你使用vscode自己的编译可以使用,会生成
task.json文件,如果使用自己的makefile就不需要使用这里 -
齿轮是编译,调用vscode的
task.json -
三角运行就是调试,调用vscode的
lauch.json,点击这里便会自动生成lauch.json里的cpp调试选项
lauch.json解释
{
"version": "0.2.0",
"configurations": [
# 从这里开始需要自动生成或复制过去,记得包含花括号
{
"name": "C/C++ Runner: Debug Session", # 这个调试项目的名字,可以在vscode调试选项卡看到这个名字
"type": "cppdbg", # 类型,不需要修改
"request": "launch", # 启动,不需要修改
"args": [], # 启动调试程序时,需要给程序附加的参数,如ls -l,-l即为附加参数
"stopAtEntry": false, # 启动后停在main入口
"externalConsole": false, # 是否新开一个debug的ssh窗口
"cwd": "/home/kira/rpmbuild/BUILD/file-5.11/src", # 调试的项目目录
"program": "/home/kira/rpmbuild/BUILD/file-5.11/src/.libs/file", # 这个很重要,需要调试的程序,记得gcc -g
# 从这里开始,后续的都不需要修改了
"MIMode": "gdb",
"miDebuggerPath": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}