gdb-7.5.1 crosee compilier
###################
## termcap ##
###################
gdb 需要 termcap
wget ftp://ftp.gnu.org/gnu/termcap/termcap-1.3.1.tar.gz
tar xvzf termcap-1.3.1.tar.gz
cd termcap-1.3.1
./configure --target=arm-linux --prefix=`pwd`/./install
configure 沒辦法改 toolchain 手動修改
vim Makefile
-CC = gcc
-AR = ar
-RANLIB = ranlib
+CC = arm-linux-gcc
+AR = arm-linux-ar
+RANLIB = arm-linux-ranlib
make
make install
###################
## gdb ##
###################
wget http://ftp.gnu.org/gnu/gdb/gdb-7.5.1.tar.bz2
tar xjvf gdb-7.5.1.tar.bz2
這個例子 target board 是 ARM,因為要支援 remote gdb,所以 host 是 PC
1. build gdb for PC (不需要 termcap)
./configure \
--host=i686-pc-linux-gnu --target=arm-mv5sft-linux-gnueabi \
--program-prefix=arm-linux- \
--prefix=`pwd`/./install_pc
tui 版本沒編出來??再研究...
--enable-tui
make && make install
會產出 arm-linux-gdb
2. build gdb & gdbserver for ARM (需要 termcap)
./configure --host=arm-mv5sft-linux-gnueabi --prefix=`pwd`/./install_arm \
CPPFLAGS=-I`pwd`/../termcap-1.3.1/install_marvell/include \
LDFLAGS=-L`pwd`/../termcap-1.3.1/install_marvell/lib
make && make install
會產出 gdb & gdbserver
a. 如果只要 gdbserver
./configure --host=arm-mv5sft-linux-gnueabi
make
會產出 gdbserver
####################################################################################
##
## --program-prefix=arm-linux- 是指 build 好得執行檔前綴字,比如 arm-linux-gdb
##
## --enable-tui 是讓 GDB 編出圖形化 UI debug 界面,需要 ncurses,但還是編不出來 @@,先不理
##
####################################################################################
有時 make clean, make distclean 會清不乾淨 config.cache,用 find 來砍。
find . -name "config.cache" -exec rm {} \;
refernece:
http://checko.blogspot.tw/2006/05/use-gdbserver-and-gdb-remote-debugging.html
留言
張貼留言