导读:
由于篇幅限制,分了4部分:
一:http://hi.baidu.com/%CE%DA%D1%BB%C3%F7/blog/item/6246142475b6ab2ad5074264.html
二:http://hi.baidu.com/%CE%DA%D1%BB%C3%F7/blog/item/88a32787b4ff092bc75cc365.html
三:http://hi.baidu.com/%CE%DA%D1%BB%C3%F7/blog/item/257bc907d455dacc7a894765.html
四:http://hi.baidu.com/%CE%DA%D1%BB%C3%F7/blog/item/2c7f1a0830882331e8248866.html
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
msgfmt (GNU gettext-tools) 0.14.5
makeinfo (GNU texinfo) 4.8
GNU M4 1.4.4
flex 2.5.31
GNU Awk 3.1.5
perl, v5.8.7
GNU sed version 4.1.4
gettext (GNU gettext-runtime) 0.14.5
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:$PATH
arm@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
名称:binutils-2.16.tar.gz
tar.gz
下载地址:http://ftp.gnu.org/gnu/binutils/binutils-2.16.tar.gz
2.2.2 gcc
名称: gcc-3.4.4.tar.bz2
下载地址: http://ftp.gnu.org/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
下载地址: http://ftp.gnu.org/gnu/glibc/glibc-2.3.5.tar.gz
http://ftp.gnu.org/gnu/glibc/glibc-linuxthreads-2.3.5.tar.gz
2.2.4 linux kernel
名称: linux-2.6.14.1.tar.bz2
下载地址: http://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.14.1.tar.bz2
2.2.5 gdb
名称: gdb-6.4.tar.gz
下载地址: http://ftp.gnu.org/pub/gnu/gdb/gdb-6.4.tar.gz
2.3 准备补丁
2.3.1 ioperm.c.diff
作用: 打修正ioperm()函数
下载地址: http://frank.harvard.edu/~coldwell/toolchain/ioperm.c.diff
2.3.2 flow.c.diff
作用: 修改gcc一处bug
下载地址:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/flow.c.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.563.4.2&r2=1.563.4.3
2.3.3 t-linux.diff
作用: 该补丁用于产生crti.o和crtn.o文件.
下载地址: http://frank.harvard.edu/~coldwell/toolchain/t-linux.diff
本文转自
http://hi.baidu.com/%CE%DA%D1%BB%C3%F7/blog/item/6246142475b6ab2ad5074264.html
由于篇幅限制,分了4部分:
一:http://hi.baidu.com/%CE%DA%D1%BB%C3%F7/blog/item/6246142475b6ab2ad5074264.html
二:http://hi.baidu.com/%CE%DA%D1%BB%C3%F7/blog/item/88a32787b4ff092bc75cc365.html
三:http://hi.baidu.com/%CE%DA%D1%BB%C3%F7/blog/item/257bc907d455dacc7a894765.html
四:http://hi.baidu.com/%CE%DA%D1%BB%C3%F7/blog/item/2c7f1a0830882331e8248866.html
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
msgfmt (GNU gettext-tools) 0.14.5
makeinfo (GNU texinfo) 4.8
GNU M4 1.4.4
flex 2.5.31
GNU Awk 3.1.5
perl, v5.8.7
GNU sed version 4.1.4
gettext (GNU gettext-runtime) 0.14.5
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:$PATH
arm@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
名称:binutils-2.16.tar.gz
tar.gz
下载地址:http://ftp.gnu.org/gnu/binutils/binutils-2.16.tar.gz
2.2.2 gcc
名称: gcc-3.4.4.tar.bz2
下载地址: http://ftp.gnu.org/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
下载地址: http://ftp.gnu.org/gnu/glibc/glibc-2.3.5.tar.gz
http://ftp.gnu.org/gnu/glibc/glibc-linuxthreads-2.3.5.tar.gz
2.2.4 linux kernel
名称: linux-2.6.14.1.tar.bz2
下载地址: http://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.14.1.tar.bz2
2.2.5 gdb
名称: gdb-6.4.tar.gz
下载地址: http://ftp.gnu.org/pub/gnu/gdb/gdb-6.4.tar.gz
2.3 准备补丁
2.3.1 ioperm.c.diff
作用: 打修正ioperm()函数
下载地址: http://frank.harvard.edu/~coldwell/toolchain/ioperm.c.diff
2.3.2 flow.c.diff
作用: 修改gcc一处bug
下载地址:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/flow.c.diff?cvsroot=gcc&only_with_tag=csl-arm-branch&r1=1.563.4.2&r2=1.563.4.3
2.3.3 t-linux.diff
作用: 该补丁用于产生crti.o和crtn.o文件.
下载地址: http://frank.harvard.edu/~coldwell/toolchain/t-linux.diff
本文转自
http://hi.baidu.com/%CE%DA%D1%BB%C3%F7/blog/item/6246142475b6ab2ad5074264.html