arm-linux-gdb除錯工具的安裝與交叉編譯gdbserver
arm-linux-gdb除錯工具的安裝與交叉編譯gdbserver
分類:嵌入式
開發環境:LPC3250 開發板:安裝linux2.6.39;
交叉編譯工具:arm-none-linux-gnueabi-gcc
pc的虛擬機器:Linux version 2.6.32.65 ([email protected]) (gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5.1) ) #1 SMP Fri Apr 3 09:17:23 CST 2015
二、安裝
安裝依賴檔案
sudo apt-get install texinfo (必要,其它根據實際需要或提示來安裝
sudo apt-get install m4
sudo apt-get install flex
sudo apt-get install bison
1.arm-linux-gdb除錯工具的安裝:
(1)解壓:tar zxvf gdb-7.9.1.tar.gz
(2)配置安裝gdb:
cd gdb-7.9.1
./configure --target=arm-linux
make
make install
2.配置及交叉編譯gdbserver:
cd gdb
cd gdbserver
CC=arm-none-linux-gnueabi-gcc ./configure --host=arm-linux
make
檢查生成的gdbserver
$ file gdbserver
gdbserver: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.14, not stripped
其中:
--target 指明目標系統型別
--prefix 指生成的可執行檔案安裝在哪個目錄
--program-prefix 指生成的可執行檔案的字首
三、除錯
(1)在虛擬機器下編寫測試程式lab.c,編譯arm-linux-gcc -g -o lab lab.c
(2)將gdbserver資料夾中的gdbserver和(1)中生成的lab拷貝到開發板的工作目錄下。
(3)在開發板的工作目錄下輸入./gdbserver 192.168.202.235:55555 lab。嘗試過好像此處ip地址貌似可以隨便寫,埠55555,隨意寫的,應該大於1024即可。
(4)在pc虛擬機器下執行arm-linux-gdb,開啟後並輸入target remote 192.168.202.235:55555,與ARM板建立連線
(5)開發板輸入如下:
(6)虛擬機器下輸入如下:
其中192.168.202.235是ARM開發板的IP地址。請確保開發板和虛擬機器可以ping通。
(7)開發板中出現Remote debugging from host 192.168.202.191則表示GDB交叉編譯可以使用。在gdb下輸入命令c,lab將被程式。