vs code 远程调试 linux c 程序
时间: 2024-06-19 14:04:05 浏览: 18
VS Code 提供了一个名为 Remote Development 的扩展,可以让用户远程开发和调试应用程序。通过这个扩展,你可以使用 VS Code 在本地编辑和调试远程计算机上的代码。
以下是使用 VS Code 远程调试 Linux C 程序的基本步骤:
1. 在远程机器上安装 gdbserver
在 Linux 机器上安装 gdbserver,可以使用以下命令:
```
sudo apt-get install gdbserver
```
2. 在远程机器上编译 C 程序
在远程机器上编译 C 程序,并确保在编译过程中加入 -g 参数以生成调试信息。
3. 在本地机器上打开 VS Code
在本地机器上打开 VS Code,使用 Remote Development 扩展连接到远程机器。
4. 在本地机器上安装 C/C++ 插件
在本地机器上安装 C/C++ 插件,该插件可以帮助你在 VS Code 中调试 C 程序。
5. 配置 VS Code 的 launch.json 文件
在 VS Code 中打开 launch.json 文件,配置 "program"、"remoteMachine" 和 "miDebuggerPath" 参数。例如:
```
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Attach",
"type": "cppdbg",
"request": "attach",
"program": "${workspaceFolder}/a.out",
"remoteMachine": "your-remote-machine",
"miDebuggerPath": "/usr/bin/gdb",
"miDebuggerArgs": "-q",
"linux": {
"MIMode": "gdb"
},
"windows": {
"MIMode": "gdb"
},
"pipeTransport": {
"pipeCwd": "${workspaceFolder}",
"pipeProgram": "ssh",
"pipeArgs": [
"-T",
"-x",
"-o",
"StrictHostKeyChecking=no",
"-o",
"UserKnownHostsFile=/dev/null",
"user@your-remote-machine"
]
}
}
]
}
```
6. 启动调试
在 VS Code 中按下 F5 启动调试。VS Code 将连接到远程机器并启动 gdbserver。你可以使用 VS Code 的调试工具来设置断点、单步执行等操作。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)