arm-linux gdb調試工具的安裝
開發環境:AT91SAM9X25開發板:安裝linux2.6.39;
pc的虛擬機:Linux version 2.6.18-194.el5 (gcc version 4.1.2 20080704 (Red Hat 4.1.2-48)) ,arm-linux-gcc的版本為version 4.4.3
一、下載gbd http://ftp.gnu.org/gnu/gdb/;本人下載的是gdb-6.8。
二、安裝
(1)解壓:tar zxvf gdb-6.8a.tar.gz
(2)配置安裝gdb:
cd gdb-6.8
./configure --target=arm-linux
make
make install
(3)配置安裝gdbserver:
cd gdb
cd gdbserver
./configure --target=arm-linux --host=arm-linux
CC = /usr/local/FriendlyARM/toolschain/4.4.3/bin/arm-linux-gcc
CC的值為arm-linux-gcc的路徑,可以通過which arm-linux-gcc命令定位出來。arm-linux-gcc的安裝請參照之前的博文。
make
通過以上幾個命令,已經將gdb安裝完成了。(請繼續往下。。。。)
三、小試牛刀
(1)在虛擬機下編寫測試程序test.c,編譯arm-linux-gcc -g -o test test.c
(2)將gdbserver文件夾中的gdb和(1)中生成的test拷貝到開發板的工作目錄下。
(3)pc虛擬機下打開minicom,則當前在開發板的工作目錄下輸入./gdbserver 192.168.1.110:55555 test。嘗試過好像此處ip地址貌似可以隨便寫,端口55555,隨意寫的,應該大于1024即可。
此時,可能會出現如下錯誤:error in loading shared libraries: libthread_db.so.1: cannot open shared object file: No such file or directory
解決步驟:<1>在虛擬機下找到arm-linux-gcc的安裝目錄,在/usr/local/FriendlyARM /toolschain/4.4.3/arm-none-linux-gnueabi/lib找到libthread_db-1.0.so文件。
<2>將該文件拷貝到開發板的/lib文件夾下,在該目錄下打開終端,輸入ln -s libthread_db-1.0.so libthread_db.so.1。
(4)開發板輸入如下:
(5)虛擬機下輸入如下:
其中192.168.1.110是開發板的IP地址。請確保開發板和虛擬機可以ping通。
(6)開發板中出現Remote debugging from host 192.168.1.220則表示GDB交叉編譯可以使用。在gdb下輸入命令c,test_arm將被程序。
來自:http://my.oschina.net/gzhuo/blog/323434