Linux下调试器GDB的简单使用图解
gdb是一個由GNU開源組織發(fā)布的、UNIX/LINUX操作系統(tǒng)下的、基于命令行的、功能強大的程序調(diào)試工具。
當前是虛擬機上的Ubuntu系統(tǒng);敲Ctrl+Alt+t,打開控制臺終端;
which gcc命令,查看gcc的安裝目錄;? ? gcc -v命令,查看gcc版本;
命令行輸入 vi test.c,回車,進入vi編輯器編輯test.c的代碼;進入以后,敲i鍵,進入vi的插入模式,然后可以輸入代碼;輸入完,敲ESC退出插入模式,再敲冒號,切換到底行模式,此時在編輯器底部出現(xiàn)冒號;在冒號后面輸入wq,回車,保存退出;
看一下test.c有了;
然后用gcc命令編譯;加上-g參數(shù),這是把調(diào)試信息加入到構建出的可執(zhí)行文件中;構建出可執(zhí)行文件test;
輸入 gdb test,開始進入到test程序的調(diào)試;出現(xiàn) (gdb) 的提示符;
輸入 L 命令,可查看源代碼;
輸入 b 6,在第6行設置一個斷點;
如果程序已經(jīng)執(zhí)行,輸入 continue 或 c,繼續(xù)執(zhí)行;
輸入 run 執(zhí)行程序,遇到斷點停止;停留在第1個斷點,行6處,如下圖;
此時可以用 print 變量名,來查看變量的值,目前沒有變量;
輸入bt命令看一下;backtrace 命令可以在遇到斷點或異常而暫停執(zhí)行時顯示棧幀,該命令簡寫為 bt;
也可以用 info reg 命令,查看寄存器;
輸入 step ,執(zhí)行到下一句;再輸入 step,已過了程序尾;
單步執(zhí)行的意思時根據(jù)源代碼一行一行地執(zhí)行。執(zhí)行源代碼中一行的命令為 next ,簡寫為 n。執(zhí)行時如果遇到函數(shù)調(diào)用,想執(zhí)行到函數(shù)內(nèi)部,使用 step 命令,簡寫為 p。
如果要逐條執(zhí)行匯編指令,可以分別使用 nexti 和 stepi 命令。
?
下回繼續(xù);
總結
以上是生活随笔為你收集整理的Linux下调试器GDB的简单使用图解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VC++在两个按钮之间连直线和折线
- 下一篇: Linux ls 命令详解