Linux—gdb除錯簡單實現
1.GDB簡述
GDB是GNU開源組織釋出的一個強大的UNIX下的程式除錯工具,GDB主要可幫助工程師完成下面4個方面的功能:
(1)啟動程式,可以按照工程師自定義的要求隨心所欲的執行程式。
(2)讓被除錯的程式在工程師指定的斷點處停住,斷點可以是條件表示式。
(3)當程式被停住時,可以檢查此時程式中所發生的事,並追索上文。
(4)動態地改變程式的執行環境。
不管是除錯Linux核心空間的驅動還是除錯使用者空間的應用程式,掌握gdb的用法都是必須。
2.安裝gdb增強工具
gdb工具時系統自帶的,但是為了更方便使用,建議 從git上面下載一些外掛
聯網Linux系統下安裝git:sudo apt-get install git
git clone https://github.com/gatieme/GdbPlugins.git ~/GdbPlugins
克隆完之後,會在你當前目錄下面有GdbPlugins 這個檔案
當你想要用某一個GdbPlugins下層目錄中某一外掛的時候,只要輸入對應命令就行
這裡我們主要使用gef 我們執行
echo "source ~/GdbPlugins/gef/gef.py" > ~/.gdbinit
3.簡單使用
(1)編譯
編譯後面加**-g**
(2)啟動GDB
gdb + 生成檔名
如 gdb demo
(3)下斷點
b + 行數或函式名
如 b main (在main函式下處斷點)或者 b 6(在第六行下斷點)
使用 info breakpoints
檢視斷點
(4)輸入:r
開始執行
(5)向下執行
" n
" :執行一條語句,碰到函式會直接執行函式
" s
“:執行下一條語句,碰到函式會進入到函式中
" p + 變數名”:檢視執行中程式的變數
結果結果會在上方展示
(6)退出
輸入q
退出除錯
至此
學識淺薄,簡單介紹一下gdb工具
希望可以幫到您。。。
——師從上官可程式設計,陳立臣
相關文章
- Linux核心使用gdb除錯Linux除錯
- Linux中使用GDB除錯程式Linux除錯
- NASM 與 GDB 簡易除錯指南ASM除錯
- gdb除錯除錯
- GDB除錯指令除錯
- GDB 除錯程式碼除錯
- gdb除錯多程序除錯
- gdb除錯總結除錯
- gdb除錯快速上手除錯
- GDB除錯-從入門到實踐除錯
- 利用QEMU+GDB搭建Linux核心除錯環境Linux除錯
- C語言——gdb除錯C語言除錯
- 介紹 GDB 除錯 Go除錯Go
- 用GDB除錯程式(六)除錯
- GDB除錯使用記錄除錯
- GDB除錯命令詳解除錯
- gdb高階除錯命令高階除錯
- gdb除錯coredump檔案除錯
- [docker+gdb] 除錯 PHP 原始碼,看 strval 函式 C 實現Docker除錯PHP原始碼函式
- gdb除錯傳入引數除錯
- C編譯: 使用gdb除錯編譯除錯
- Kdevelop的簡單使用和簡單除錯dev除錯
- [Linux]簡單的shell實現Linux
- gdb除錯正在執行的程式除錯
- GDB除錯基礎使用方法除錯
- OpenHarmony系統使用gdb除錯init除錯
- Node.js 簡單除錯Node.js除錯
- 簡單就是易於除錯除錯
- 簡單的沙箱反除錯除錯
- GDB 除錯 Mysql 實戰(一)原始碼編譯安裝除錯MySql原始碼編譯
- GDB 除錯 .NET 程式實錄 - .NET 呼叫 .so 出現問題怎麼解決除錯
- gdb除錯core dump檔案之二除錯
- 使用GDB除錯Android Native 層程式碼除錯Android
- 使用PHP內建web伺服器,實現簡單的除錯應用PHPWeb伺服器除錯
- Google Chrome 除錯JS簡單教程GoChrome除錯JS
- 嵌入式GDB除錯Linux C程式或交叉編譯(開發板)除錯LinuxC程式編譯
- 聊一聊 GDB 除錯程式時的幾個實用命令除錯
- Linux gdb偵錯程式用法全面解析Linux