gnu交叉工具链(arm-linux-gcc_3.4.4).pdf
文本预览下载声明
GNU 交叉工具链(arm-linux-gcc 3.4.4)
Modified by litroncn (litroncn@163.com)
Based on sunhe (msunhe@)
1 Linux 下工作用户及环境
1.1 软件环境
Linux ubuntu 6.06 LTS
Kernel version 2.6.15-23-686
gcc version 4.0.3 (Ubuntu 4.0.3-1ubuntu5)
GNU Make 3.81
GNU sed version 4.1.4
msgfmt (GNU gettext-tools) 0.14.5
makeinfo (GNU texinfo) 4.8
GNU M4 1.4.4
flex 2.5.31
autoconf (GNU Autoconf) 2.59
automake (GNU automake) 1.4-p6
1.2 编译相关配置
1. 添加工作用户(在 root 用户下)
root@ubuntu:~# useradd -G root -g root -d/home/arm arm
root@ubuntu:~# mkdir -p /home/arm
root@ubuntu:~# chown -R arm /home/arm
root@ubuntu:~# chmod -R 775 /home/arm
2. 建立工作目录(用 arm 用户登陆)
arm@ubuntu:~$ mkdir dev_home
arm@ubuntu:~$ cd dev_home
arm@ubuntu:~/dev_home$ mkdir btools kernel
3. 登陆时启动环境变量(用 root 用户登陆)
root@ubuntu:~# vi ~/.bashrc
在.bashrc 最后加上
export PATH=/usr/local/arm/3.4.4/bin:$PATHarm@ubuntu:~/dev_home$
重新登陆 arm 用户,环境变量生效
arm@ubuntu:~$ su arm
2. 设置环境变量,准备源码及相关补丁
2.1 设置环境变量
arm@ubuntu:~$ vi ~/.bashrc
export PREFIX=/usr/local/arm/3.4.4
export TARGET=arm-linux
export SYSROOT=${PREFIX}/sysroot
export ARCH=arm
export CROSS_COMPILE=${TARGET}-
export PATH=${PREFIX}/bin:$PATH
export SRC=/home/arm/dev_home/btools/tchain3.4.4
注意: 如果你已经安装过 arm-linux-gcc,并且已经加入了环境变量中,将其从环境中
去掉保证 root 用户和 arm 用户环境中没有 arm-linux-gcc
2.2 准备源码包
2.2.1 binutils
名称:binutils2.16.
tar.gz
下载地址:/gnu/binutils/binutils-2.16.tar.gz
2.2.2 gcc
名称: gcc-3.4.4.tar.bz2
下载地址: /gnu/gcc/gcc-3.4.4/gcc-3.4.4.tar.bz2
2.2.3 glibc
名称: glibc-2.3.5.tar.gz
glibc-linuxthreads-2.3.5.tar.gz
下载地址: /gnu/gcc/gcc-3.4.4/gcc-3.4.4.tar.bz2
/gnu/glibc/glibc-linuxthreads-2.3.5.tar.gz
2.2.4 linux kernel
名称: linux-.tar.bz2
下载地址: /pub/linux/kernel/v2.6/linux-.tar.bz2
2.3 准备补丁
2.3.1 ioperm.c.diff
作用: 打修正 ioperm()函数
下载地址: /~coldwell/toolchain/ioperm.c.diff
2.3.2 flow.c.diff
作用: 该补丁用于产生 crti.o 和 crtn.o 文件.
下载地址:
/cgi-bin/cvsweb.cgi/gcc/gcc/flow.c.diff?cvsroot=gcconly_with_tag=
显示全部