调试C++文件
这里可以参考其他人的
来自知乎
进入正题
本人使用的VSCode是在ubuntu上,和win版本的区别造成的问题不予考虑(有区别吗)
1.打开你需要调试的py文件
2.Ctrl+shift+d(以下简写为c+s+d这种形式)或者点击左侧第4个功能运行与调试
3.直接点击运行和调试(只调试当前的py)或者点击直接建立launch.json(便于后续更改调试其他py或者c++文件),这里推荐后者
4.py文件选择python文件配置c++则选择c++gdb,这里不再对c++多做说明
5.初始的launch.json如下
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Python: 当前文件",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal"
}
]
}
6.在资源管理器(c+s+e)找到之前的py文件右键复制路径或打开py文件(alt+ctrl+c)得到路径替换到初始launch.json中的 “program”: "
f
i
l
e
"
行
替
换
{file}"行 替换
file"行替换{file}
7.可参考的launch.json如下
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Python: 当前文件",
"type": "python",
"request": "launch",
"program": "/home/xxx/test/src/xxx/scripts/xxx.py",
"console": "integratedTerminal"
},
// {
// "name": "(gdb) 启动",
// "type": "cppdbg",
// "request": "launch",
// "program": "/home/xx/test/devel/lib/xxx", ///home/xx/test/devel/lib/xxx
//
// "args": [],
// "stopAtEntry": false,
// "cwd": "${workspaceFolder}",
// "environment": [],
// "externalConsole": false,
// "MIMode": "gdb",
// "setupCommands": [
// {
// "description": "为 gdb 启用整齐打印",
// "text": "-enable-pretty-printing",
// "ignoreFailures": true
// }
// ]
// }
]
8.设置断点
9.运行调试或者F5
注意
有可能在调试的过程中出现该有的py模块没有报错如
发生异常: ModuleNotFoundError
No module named ‘rospkg’
File “/opt/ros/melodic/lib/python2.7/dist-packages/roslib/launcher.py”, line 42, in
import rospkg
这说明你的python编译器没设置对是py3而不是py2
在vscode最下方的一行可以切换为python2.7就能解决这个问题
另附
补一个vscode推荐安装插件