前言
本地机器的操作系统是windows,远程机器的操作系统是linux,开发在远程机器完成,本地只能通过ssh登录到远程。现在目的是要在本地进行图形化展示在远程的gdb debug过程。(注意这并不是gdb remote !!)
1. windows 本地安装 vscode + ‘remote ssh’ 插件
2. 准备好远程机器,并连接
作为实验,我选择用wsl-ubuntu 作为远程机器,在实际中可选择其他linux系统的机器。在vscode按 ctrl + shift + P , 然后输入 ‘remote SSH - Add new SSH Host’ , 我的配置文件及内容:
C:\Users\60514\.ssh\config
Host **wsl**
HostName 172.20.82.228
User xxx
连接后的界面是这样的 :
3. 增加 (gdb) Launch到 lauch.json 文件,并开始调试
我的lauch.json文件的(gdb) Launch内容
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "/home/xxx/worksapce/cppunit/output/test,
"args": [],
"stopAtEntry": false,
"cwd": "/usr/bin",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
{
"description": "Set Disassembly Flavor to Intel",
"text": "-gdb-set disassembly-flavor intel",
"ignoreFailures": true
}
]
}
选择上面的gdb(lauch)配置,并点击绿色的开始按钮开始gdb调试:
设置断点后开始调试,成功停在了断点处,大功告成: