b92902xxx 板


LINE

我知道大家沒有興趣學 gdb 的一些特異功能, 什麼遠端連線debug的... 所以這篇焦點放在幾個最簡單的用法, 希望對第三使徒有幫助... (第三使徒到底是誰? 總覺得跟什麼 eva 有關... ) debug 前準備: 1. source code: 這個我想大家都有 (廢話) debug 時 gdb 會顯示對應的 source code 給你看, 所以一定要有 source 2. compile 時, 要給 gcc -g 的參數, 他會做出含 debug 資訊的執行檔 (超大) 最好不要加 -O 或 -O2 的 optimize 選項, 如果加了偶而會出槌... 執行 gdb: $ gdb aa <-- aa 是我寫的程式 從 main() 開始偵錯, 把他設為 break point (gdb) break main Breakpoint 1 at 0x8048338: file aa.c, line 6. 接著就可以跑了 (gdb) run Starting program: /home/beagle/Program/test/aa Breakpoint 1, main () at aa.c:6 6 printf("%x\n", &aaa); 會跑到 main 之後的第一行停下來, 然後你可以慢慢逐行執行了... 沒耐心的話, 設另一個 breakpoint, 然後用 continue 指令讓他快跑... * * * 幾個指令: quit 離開gdb, 按 Ctrl-C 也是可以滴... break 設 breakpoint... break 6 在第六行 break break ftest 在 ftest() 這個 function 的第一行 break break aa.c:6 或 break aa.c:ftest 也可以指定哪個檔的哪一行哪個 function 停下來, 如果你寫了好幾個.c break ... if (狀況) break 後面可以加 if 判斷要不要停 tbreak 和 break 用法一樣, 但是只 break 一次就失效了... next 或 n 執行下一行, 遇到 function call 會 step over step 或 s 執行下一行, 但是遇到 function call 會 step into function 裡面 next 和 step 的分別是一個會把整個 function 當成一行一次執行完, 另一個則會追蹤到 function 裡面去, 大致上是差不多的指令... run 或 r 從頭開始執行程式直到被 break 或執行完畢才會停下... continue 或 c 被 break 之後, 用 continue 繼續跑下去... print [變數] 把變數的內容印出來看看... print 用法很多... watch [變數] 把變數設為 watchpoint, 每次程式 break (或在step時)都會印出 變數值省得一直打 print , 變數有改變時會自動 break ... 不瞞各位, 我就只會這一點點, 一直矇混到現在... @.@ 詳細的說明書在工作站打 info gdb 有詳細解說... 其實 info 有 web 介面, 我習慣用 WWW 看 info pages, 可是不知道217有沒有裝? 用 google 找到這一頁: http://uw713doc.sco.com/cgi-bin/info2html?(gdb.info)Top&lang=en --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.161.7.70







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Soft_Job站內搜尋

TOP