Multi-ice-gdb-server的编译安装
GDB可以使用多种传输手段与ARM目标板通讯,包括以太网、串口等,如果希望使用Multi-ICE来进行调试,则需要一个名为multi-ice-gdb-server的程序,它负责在ARM Multi-ICE Server与GDB之间进行ARM RDI协议与GDB调试协议的转换。
编译安装Multi-ice-gdb-server,您需要multi-ice-gdb-server的源代码,gdb的源代码,以及一个来自ARM公司的关于RDI定义的头文件包。前两者可以在光盘\Toolchain\GDB目录下得到。RDI的头文件包需要在ArmDevZone网站登记注册以后获得,具体的地址是:
http://www.armdevzone.com/registered/RDIDownload/目前,multi-ice-gdb-server仅支持在Windows下使用,所以您还需要安装cygwin,您可以参考前述章节,以得到有关信息。在本节下面的步骤中我们均使用cygwin为工作环境。
首先建立建立源代码的安装目录,并解压源代码:
mkdir /tmp/migdb
cd /tmp/migdb
tar xzf gdb-5.1.1.tar.gz
cd gdb-5.1.1/gdb
mkdir multi-ice
tar xzf multi-ice-gdb.tar.gz
mkdir /tmp/migdb/build
cd /tmp/migdb/build
配置GDB的源代码,使它支持Multi-ICE,并将目标设置为ARM ELF:
/tmp/migdb/gdb-5.1.1/configure –v –target arm-elf –enable-multi-ice 2>&1 | tee config.out
此时需要修改/tmp/migdb/build/gdb/multi-ice/Makefile,使得编译能正常进行。我们假设您下载的RDI头文件包解压以后所有的头文件被放置在c:\rdi目录下,而随Multi-ICE一起销售的ARM Multi-ICE Server软件被安装在c:\multi-ice目录下。则您需要修改Makefile中MULTI_ICE_LIBS与MULTI-ICE-INCLUDES的值,使得它们:
MULTI_ICE_INCLUDES = -I/cygdrive/c/rdi
MULTI_ICE_LIBS = -L/cygdrive/c/multi-ice -L/tmp/migdb/gdb-5.1.1/gdb/multi-ice –ltoolconf
保存修改以后回到/tmp/migdb/build目录,键入下数命令编译并安装GDB与Multi-ice-gdb-server:
make –w all install 2>&1 | tee make.out
您可能会看到大量编译器输出的警告信息,这是正常的现象。如果进展顺利,您将可以在/usr/local/bin目录下看到arm-elf-gdb.exe与multi-ice-gdb-server.exe两个文件,在/tmp/midgb/gdb-5.1.1/gdb/multi-ice目录下将得到toolconf.dll文件。以上三者便是我们所需要的。
免得大家下载困难。特意把Multi-ice-gdb-server贴出来。
(下载后将后缀名由.rar修改为tar.gz)
本主题包含附件:
sf_2004811222021.rar (68121bytes)