VScode调试Linux详解

2022-06-14 08:55:58 浏览数 (1)

 在Linux上通常使用gdb命令行调试,但该方式调试不太直观,且命令行长时间不用,容易忘记,不如GUI直观和容易上手,下面介绍基于GUI的方式调试Linux。

一.Linux调试GUI方案简介 1)    Visual studio 远程调试Linux      在VS2015版本以后Visual studio就支持Linux的编译和调试。使用熟悉的windows界面开发和调试Linux,极大的提高了开发效率,可以广泛应用的Linux服务器开发和嵌入式Linux开发。 遗憾的是该方式需要基于VS工程来调试,旧的项目是基于Makefile的工程,VS不能调试Makefile工程,通过工具将Makefile工程转VS工程,然后用VS来调试,详见https://github.com/robotdad/vclinux。 2)    基于eclipse 本地调试Linux          因为eclipse是跨平台的,安装一个带GUI的linux系统,就可以像VS一样开发和调试Linux 3)  基于QtCreator 本地调试Linux         因为QtCreator是跨平台的,安装一个带GUI的linux系统,就可以像VS一样开发和调试 4)    基于eclipse 远程调试Linux         gdb gdbserver方式,远程有一个gdbserver,本地机器通过网络发指令给gdbserver完成调试 5)    基于QtCreator远程调试Linux         gdb gdbserver方式,远程有一个gdbserver,本地机器通过网络发指令给gdbserver完成调试 6)    基于vscode远程调试Linux       该方法支持调试Linux程序,不要编译器参与,可以完美的将Makefile工程简单的接管起来调试,可以是基于ssh vscode方式或者gdb vscode gdbserver方式。本文重点介绍该ssh vscode方法的使用。

二.基于vscode ssh远程调试Linux实战

1   软件安装 1)服务器安装gdb 注意我们是ssh vscode方式,没有用到gdbserver,故不需要安装gdbserver。 gdb gdbserver方式,在宿主机还需要安装一个交叉编译的gdb,目标机起一个gdbserver去接收和解析指令,详见https://blog.csdn.net/zhaoxd200808501/article/details/77838933。 2)VScode 输入ctrl shift x  在扩展专栏安装Remote Development和C/C ,安装后完毕后产生一个SSH工具和debug工具。     

2 建立ssh连接        这里以简单起见,使用密码账号登录。当然也可以使用公钥登录。详解官方文档          1)选择ssh target          2)点击 ,输入 ssh root@IP  –A,选择配置文件路径即可         3) 选择连接服务器,右键---connect host in current window,输入相应密码即可连接SSH服务器

3   配置debug 参数,并进行调试         1) 点击debug工具栏,选择Open a file用来指定远程服务器debug源文件 即选择远程服务器的debug文件,指定目录和源文件。如C/C 文件        2)选择远程配置文件目录,并创建默认的launch.json文件        3) 修改配置文件              1.可执行文件路径             "program": "${workspaceFolder}/hello",             2.在main入口断点住              "stopAtEntry": true,      4) 选择gdb launch 调试器,就可以启动远程的hello可执行文件,并进行单步,断点等各种调试

5) vscode同样支持attach到某个进程进行在线调试,对线上正在运行的进程进行各种调试和状态查看等

0 人点赞