2011-08-10 41 views

回答

2

您可以從這裏開始http://darkdust.net/files/GDB%20Cheat%20Sheet.pdf,來的是非常方便的。

點值得一提的

  • 您可以通過啓動
    調試
  • 上輸入GDB命令行會執行最後一條指令gdb連接到一個已經運行的過程中,在那裏,進來 非常方便
  • 你可以用GDB做一些腳本,用-x falg指向 你的腳本假設你想通過ip連接到一個目標(遠程
    調試),並且你不想記住每次進入它的ip/kepp
    。從GDB 7.1 Python腳本開始,也支持 強大得多,現在

    回聲 「目標遠程192.168.XX.XX:1234」>版gscript GDB -x版gscript應用

好一些適當的東西 -

(gdb)start 
(gdb)layout split    // list the assembly and c 
(gdb)ni       // exec next instruction in assembly 
(gdb)print $pc     // prints the contents of register PC(use $) 

,你可以嘗試做一些單元測試去

(gdb)start 
(gdb)call factorial(5) 

假設你不想打擾應用定時(reatime行爲),但仍希望查看某些變量更新,你可以嘗試以下

(gdb)start 
(gdb)break <func>:<line> 
(gdb)commands 1     // '1' is the break number 
> silent 
> printf "var1 = %d\t var2 =%d\n",var1,var2 
> continue 
> end 

數據破發點,調試內存損壞時,條件斷點是非常有用的

(gdb)start 
(gdb)watch var 
(gdb)watch 0x80001212 

調試線程

(gdb)info threads 
(gdb)thread 2      // switch to thread '2' 
相關問題