老猿在CSDN的《信创之国产浪潮电脑+统信UOS操作系统体验2:安装visual studio code和cmake搭建C++开发环镜》介绍了在国产浪潮电脑+统信UOS操作系统中安装visual studio code和cmake搭建C++开发环镜的过程及案例.
同时在CSDN的《信创之国产浪潮电脑+统信UOS操作系统体验9:使用vscode构建的配置任务编译C++程序》介绍了通过vscode构建配置任务并手工调整配置文件后,生成用于编译多个文件的C++项目的生成任务过程及配置解释。
但上述过程仅限于编译,无法执行调试,本文以案例介绍通过菜单在vscode中执行编译和调试的方法。
vscode本身并不能支持调试C++程序,为了调试程序,需要先在统信UOS操作系统上安装gdb调试器,然后在vscode中进行调试相关配置。
在统信UOS操作系统上安装gdb调试器使用如下指令:
sudo apt-get install gdb
安装成功后在操作终端内就可以直接执行gdb命令,gdb安装的路径为:/usr/bin,在统信操作系统中还有个:/bin 的路径,这是/usr/bin目录的一个软连接,因此gdb的路径即可以是/usr/bin/gdb,也可以是/bin/gdb。
本次使用的测试代码及编译任务的配置与老猿在CSDN的《信创之国产浪潮电脑+统信UOS操作系统体验9:使用vscode构建的配置任务编译C++程序》介绍的一样。
但要注意的是要生成调试程序,g++的编译参数要有“-g”参数,具体配置的task.json文件内容如下:
{
"version": "2.0.0",
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: g++ 生成活动文件",
"command": "/usr/bin/g++",
"args": [
"-fdiagnostics-color=always",
"-g",
"${fileDirname}/hello.cpp",
"${fileDirname}/set.cpp",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "编译器: /usr/bin/g++"
}
]
}
关于tasks的配置请参考老猿在CSDN的《信创之国产浪潮电脑+统信UOS操作系统体验8:Visual Studio Code中的任务文件tasks.json和任务配置要素介绍》的介绍。
配置编译任务后就可以执行编译了,在vscode选择:终端->运行生成任务
执行成功:
此时在菜单中选择:运行->启动调试,就可以执行调试任务了:
可以在代码右边单击鼠标右键设置断点,在右上部位点击几个图标执行:继续往下执行(F5)、逐过程(F10)、单步调试(F11)等调试动作,也可以通过左边的窗口观看变量数据并设置监视的数据。
上面通过编译后直接执行调试即可对程序进行调试,但对于一些特定场景,上述这种操作无法满足调试要求,需要单独配置配置launch.json的调试配置文件。
launch.json文件是用于配置VS Code在调试程序时的启动方式和参数的文件。通过编辑launch.json文件,可以指定要调试的程序、调试器的类型、启动参数等信息,以便在按下F5键时启动调试会话。
在VSCode中调试C++程序时,必须配置launch.json的情况有以下几种:
{
"version": "0.2.0",
"configurations": [
{
"name": "Debug with custom arguments",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/main.cpp",
"args": ["arg1", "arg2"],
"environment": [
{
"name": "LD_LIBRARY_PATH",
"value": "/usr/local/opencv430/lib:/usr/local/opencv430/lib"
}
]
}
]
}
{
"version": "0.2.0",
"configurations": [
{
"name": "Debug on remote machine",
"type": "cppdbg",
"request": "launch",
"program": "/path/to/remote/main.cpp",
"miDebuggerServerAddress": "remote-machine-ip:port"
}
]
}
关于launch.json的配置在此就不展开进一步介绍了。
本文简单介绍了在vscode中调试C++程序的基本步骤,要调试程序时,首先要确保使用g++编译时带“-g”参数,然后进入vscode运行菜单按F5启动调试,如果程序带有参数等场景,还要配置launch.json调试配置文件。
如果阅读本文于您有所获,敬请点赞、评论、收藏,谢谢大家的支持!
更多关于统信操作系统及vscode的介绍的内容请参考专栏《国产信创之光》的其他文章。
前两个专栏都适合有一定Python基础但无相关知识的小白读者学习,第三个专栏请大家结合《https://blog.csdn.net/laoyuanpython/category_9979286.html OpenCV-Python图形图像处理 》的学习使用。
对于缺乏Python基础的同仁,可以通过老猿的免费专栏《https://blog.csdn.net/laoyuanpython/category_9831699.html 专栏:Python基础教程目录)从零开始学习Python。
如果有兴趣也愿意支持老猿的读者,欢迎购买付费专栏。