1.首先把在宿主機上 編譯 arm-fsl-linux-gnueabi-gcc
主機的ip為192.168.1.202
目標板的ip為192.168.1.136
2.然後把目錄通過nfs 載入到目標板上: mount -t nfs 192.168.1.202:/home/duan/nfs /mnt/nfs -o nolock
3.在目標板上開啟gdb服務
gdbserver:2000+需要除錯的檔案 //2000為埠號 可以自己定義
目標板會顯示為:
gdbserver :2000 armbugging1
process armbugging1 created; pid = 1276
listening on port 2000
4.在主機上啟動arm-linux-gdb程式 並裝載需要除錯的檔案:
arm-fsl-linux-gnueabi-gdb armbugging1
target remote 192.168.1.136 :2000
目標板上會顯示:
remote debugging from host 192.168.1.202
現在就可以進行gdb除錯了
但是:你輸入run命令會出現:the "remote" target does not support "run". try "help target" or "continue".
原因是
target remote 的方式遠端不能用 run應該使用continue執行程式,必須先load程式
也可以 (gdb) b main
(gdb) c
GDB遠端除錯
3.建立配置檔案 編譯 gdb允許把編譯配置和編譯結果放到任意的目錄,因此可以在gdb目錄之外建立乙個專門存放編譯結果的目錄。cd opt mkdir p arm gdb build cd arm gdb build opt gdb 6.6 configure target arm linux pr...
遠端gdb除錯
在主機上準備目標機的gdb,例如目標機為arm,則準備arm linux gdb 目標機上需要安裝gdbserver 在目標機上用gdbserver執行程式 gdbserver 127.0.0.1 2345 test 注意,待除錯的程式編譯時需要加上 g 引數。在主機上發起鏈結和除錯 進入gdb g...
gdb 遠端qemu arm除錯
把 c 編譯成 arm 指令的可執行檔案 usr bin arm linux gnueabi g hello.cpp cat hello.cpp include void crash int main 直接執行報錯,因為 host 是 linux x86 a.out bash a.out canno...