您好,登录后才能下订单哦!
这篇文章将为大家详细讲解有关vscode使用gdb调试的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
1、vscode启动debug窗口
按Ctrl+Shift+D,打开Debug窗口
默认是“No configurations”, 点击“F5”,会提示你配置GDB参数(选择gcc build and debug active file),配置文件名称为launch.json(配置参考3)
配置完成后,再按F5, 会提示配置GCC,选择“Configure Task”, 选择“C/C++: build and debug active file”, 配置文件名称为task.json(配置参考2)
2、GCC配置
{ // See https://go.microsoft.com/fwlink/?LinkId=733558 // for the documentation about the tasks.json format "version": "2.0.0", "tasks": [ { "type": "shell", "label": "gcc build active file", "command": "/usr/share/mips-gcc-4.6/staging_dir/bin/mips-linux-gcc", "args": [ "-g", "${file}", "-o", "${fileDirname}/${fileBasenameNoExtension}" ], "options": { "cwd": "/usr/bin" }, "problemMatcher": [ "$gcc" ] } ] }
“command”: 编译链的地址
3、GDB配置
{ // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "gcc build and debug active file", "type": "cppdbg", "request": "launch", "miDebuggerServerAddress": "192.168.0.1:10000", "program": "/home/renyinshan/work/p53/apps/cmdlib/test", "args": [], "stopAtEntry": true, "cwd": "/home/renyinshan/work/p53/apps/cmdlib/", "environment": [], "externalConsole": false, "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ], "preLaunchTask": "gcc build active file", "miDebuggerPath": "/home/renyinshan/work/p53/apps/gdb/install/bin/mips-linux-gdb" } ] }
“program”: 要调试的程序名(包含路径,最好绝对路径,免得麻烦)
“miDebuggerServerAddress”: 服务器的地址和端口
“cwd”: 调试程度的路径
“miDebuggerPath”: gdb的路径
4、GDB server编译及运行
1)编译
P53编译时,请打开如下开关; P59需要从编译链目录拷贝一个。
scripts/tozedap-router_4g_industry/config.tozedap-router_4g_industry:564:export NO_CPP_LIB=0 GDB运行需要libstdc++.so.6的库,所以需要把此开关打开。
./cool 3 gdb_build 等待完成即可
编译完成后的文件如下:
renyinshan@renyinshan:~/work/p53/build$ ls ../apps/gdb/install/* ../apps/gdb/install/bin: mips-linux-gdb mips-linux-gdb-add-index mips-linux-run ../apps/gdb/install/include: gdb ../apps/gdb/install/lib: libmips-linux-sim.a ../apps/gdb/install/share: gdb info locale man renyinshan@renyinshan:~/work/p53/build$ ls ../apps/gdb/installgdbserver/bin/ mips-linux-gdbserver renyinshan@renyinshan:~/work/p53/build$
说明:
install/bin 目录的mips-linux-gdb为vscode中配置需要的;
installgdbserver/bin/ 目录中的mips-linux-gdbserver,需要拷贝到板子中;
2)ssh登录设备,下载gdbserver到/tmp目录中, 并增加+x权限
3)ssh登录设备,下载可执行程序到/tmp目录中, 并增加+x权限
4)运行
/tmp # ./mips-linux-gdbserver :10000 ./test 调试输出: /tmp # ./mips-linux-gdbserver :10000 test Process /tmp/test created; pid = 22608 Listening on port 10000 Remote debugging from host 192.168.0.245 APP is running!
备注说明:
1) 下载的可执行程序,必须保证是设备所需编译链编译的;
2) vscode中按F5调试时,GCC编译的配置和GDB参考1和2;
5、调试
准备完成, 在VSCode进行调试。
关于vscode使用gdb调试的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。