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