首先安装必须的一些工具
apt-get install bison build-essential flex libncurses5-dev patch
由于这里gcc 会用到gcc-4.1,而ubuntu 8.04默认是4.2.4 所以
安装4.1
apt-get install gcc-4.1
同时重新链接符号文件
rm /usr/bin/gcc
ln -s /usr/bin/gcc-4.1 /usr/bin/gcc
编译完后再链接回来:
rm /usr/bin/gcc
ln -s /usr/bin/gcc-4.2 /usr/bin/gcc
可以用
gcc --version 查看版本。
然后下载下列软件包:放到$HOME/downloads下
crosstool-0.43
gcc-3.3.6
gcc-4.1.1
glibc-2.3.2
binutils-2.16.1
linux-libc-headers-2.6.12.0
linux-2.6.27.6
可以不用下载,编译脚本里有wget获取 不过可能会很慢。
解压crosstool-0.43包 到其路径下 修改demo-arm9tdmi.sh
TARBALLS_DIR=$HOME/downloads (此处为crosstool需要下载的文件目录注意这个最好设为可写的文件夹,不然下载时候会报错)
RESULT_TOP=/home/arm/crosstool(这是需要生成的工具链存放目录)
eval `cat arm9tdmi.dat gcc-4.1.1-glibc-2.3.2.dat` sh all.sh --notest
修改 crosstool-0.43 目录下 gcc-4.1.1-glibc-2.3.2-tls.dat 为(没有就将gcc-4.1.0-glibc-2.3.2-tls.dat改为这个就行了)
BINUTILS_DIR=binutils-2.16.1
GCC_CORE_DIR=gcc-3.3.6
GCC_DIR=gcc-4.1.1
GLIBC_DIR=glibc-2.3.2
LINUX_DIR=linux-2.6.27.6
LINUX_SANITIZED_HEADER_DIR=linux-libc-headers-2.6.12.0
GLIBCTHREADS_FILENAME=glibc-linuxthreads-2.3.2
GDB_DIR=gdb-6.5
保存退出。
在终端中进入 crosstool-0.43 目录执行
./demo-arm9tdmi.sh
最后看到
+echo Done.
Done.
即可。
将bin所在路径加入环境变量 gedit /etc/enveronment 注销后重新进入即可使用。