前几天做笔试,最后一题代码有点问题,习惯性地按了个F5启动gdb发现居然爆炸了,报错找不到编译出来的二进制文件,看着像是默认配置的问题,由于时间紧迫最后只能用输出大法解决。
感觉不可理喻,几年前调程序的时候就可以一键F5直接启动,直到半年前暑期实习的时候肯定都还是好的。最近没怎么写过算法题,盲猜是最近VSCode更新偷改了默认配置。解决一下。
左下角打开设置,搜索launch.json,打开默认的settings.json,添加内容如下:
"launch": {"configurations": [{"name": "GDB","type": "cppdbg","request": "launch","miDebuggerPath": "path/to/gdb","program": "${workspaceFolder}/${fileBasenameNoExtension}.exe","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}],"preLaunchTask": "C/C++: g++.exe 生成活动文件"}],"compounds": []}
之后按F1,找到Tasks: Open User Tasks,新增一个Task:
{"type": "cppbuild","label": "C/C++: g++.exe 生成活动文件","command": "path/to/g++","args": ["-fdiagnostics-color=always","-g","${file}","-o","${fileDirname}\\${fileBasenameNoExtension}.exe"],"problemMatcher": ["$gcc"],"group": {"kind": "build","isDefault": true},"detail": "调试器生成的任务。"
}
修改完保存即可,注意修改g++和gdb路径。按F5又能一键启动了。