您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。