本筆記基於韋東山的教程,目的通過gdb去除錯目標板上核心的執行。
1.確保三者能夠ping通。
2.修改目標板uboot命令引數
為3.輸入命令:->nfs 0x31000000 10.196.169.***:/work/nfs_root/uimage
->bootm 0x31000000
使用命令之前把linux核心放到
nfs_root
目錄之下,
ip位址根據你的
linux
主機來判斷。
4.這時候有如下資訊
這時候表示在等待arm-linux-gdb的連線
5.主機linux上面進入核心目錄,啟動
gdb。
6.進入gdb,執行命令
7.看到資訊表示已經連線目標板
8.這時候可以使用gdb命令控制核心執行和除錯了。
比如輸入n執行下一條,
c全速執行,
q退出。具體參考
gdb手冊。
9.為避免每次都要設定串列埠和連線,核心目錄建立
.gdbinit檔案
10.利用ddd視覺化來除錯。
同前面一樣,啟動核心,然後關閉串列埠,切換到linux主機介面
必須確保核心目錄下有.gdbinit檔案
執行cd /work/system/linux-2.6.22.6
sudo ddd --debugger arm-linux-gdb ./vmlinux
這是就可以看到啟動介面了。
GDB 在arm開發板上的遠端除錯
嵌入式linux的gdb除錯環境由host和target兩部分組成,host端使用arm linux gdb,target board端使用gdbserver。除錯時,應用程式在嵌入式目標系統上執行,而gdb除錯在host端。一 編譯安裝gdb gdbserver 這是我的編寫的編譯指令碼 bin ...
gdb和gdbserver除錯開發板
2.編譯 cd gdb 7.11.50.20160801 configure target arm linux prefix pwd build v make make install 至此,gdb安裝完成。接下來為linux arm安裝gdbserver cd gdb 7.10.1 gdb gdb...
開發板上如何使用GDB
嵌入式linux的gdb除錯環境由host和target兩部分組成,host端使用arm linux gdb,target board端使用gdbserver。除錯時,應用程式在嵌入式目標系統上執行,而gdb除錯在host端。一 編譯安裝gdb gdbserver tar xvzf gdb 6.6....