GDB用法簡要整理

2021-09-07 12:39:21 字數 800 閱讀 3019

使用gdb是需要在編譯是指定-g命令,在可執行檔案中新增符號資訊。

可以使用gdbgdb executable-file等啟動gdb除錯。

退出時,命令列輸入quitq或者ctrl + d。

在gdb命令介面中可以輸入help獲得幫助資訊。

使用backtracewherebt可檢視當前執行緒呼叫堆疊。

print variable-name使用該指令可以顯示變數的值。

info stack檢視呼叫堆疊

info thread檢視執行緒堆疊

之前只是知道有valgrind等輔助檢測記憶體洩露的工具,但不太清楚還有這個名字。

最初的來由是因為c/c++都存在相同的記憶體管理問題(比如記憶體洩露、緩衝區溢位、記憶體管理錯誤等bug),這就催生了記憶體偵錯程式的出現。

常用的記憶體偵錯程式有valgrind、purify、insure++、boundschecker。

具體可以參考點評五款用於 linux 程式設計的記憶體偵錯程式。

直接使用gdb命令列總是枯燥無味的。正確的用法是結合實際情況分析並學習相關除錯技巧。

可以在linux下使用ddd的ui介面除錯,跟vs的偵錯程式有點類似。

本文簡要整理了gdb支援的除錯命令,作為後續參考。

更詳細的資料建議參考gdb manual。

GDB技巧整理

整理常用的gdb技巧。常用的gdb命令.直接執行 gdb args prog arg1 arg2 執行gdb後使用run命令 gdb prog run arg1 arg2 attach到已執行的程式 gdb pid ptype用於顯示symbol的型別,示例原始碼為 struct abc int m...

gdb 命令整理

最近除錯nginx原始碼,使用到了gdb,為方便以後除錯使用。整理了一些常用命令。啟動專案並斷點 start 打臨時斷點 tb打斷點 b根據 行位置設定斷點 根據函式名設定斷點 b func name 根據執行時的位址設定斷點 b 0x5859c0 檢視斷點列表 info break 檢視函式堆疊 ...

CG簡要情況整理

主要學術 acm siggraph www.siggraph.com gdc vedio game developers www.gdconf.com 基本內容 不介紹opengl固定流水線和shader,主要介紹cg涉及到的幾個模組總覽 一 幾何建模 如何表達三維物體 三角麵片 比較好表達,因為三...