arm-linux-gcc制作

在自己制作arm-linux-gcc的时候对于初学者来说可能是路径很容易弄昏,所以注意路径就好了。

 

 

(1)保证你的ubuntu8.10下安装了以下软件开发工具。

Bison
flex

build-essential
 
patch
 
libncurses5-dev
 
(2)因为ubuntu8.10自带的是gcc-4.3.2无法用crosstool正常编译交叉编译器,所以必须安装gcc-4.1,但是不必卸载4.3.2。方法是用新立得软件包管理器安装gcc-4.1,之后 
参考vi /root/.bashrc
export  PREFIX=/armtools
export  TARGET=arm-linux
export PATH=$PATH:/armtools/arm-linux/bin:/armtools/bin
chinazcw
的方法
sudo rm /usr/bin/gcc        (删除GCC,它只是个到gcc-4.3.2的软连接文件)
sudo ln -s /usr/bin/gcc-4.1 /usr/bin/gcc        (建立GCC到gcc-4.1的软连接)
(3)如果你运行
ls -la /bin/sh
命令看到/bin/sh其实是一个指向dash的软链接,则请运行以下命令,将/bin/sh链接到bash。
sudo mv /bin/sh /bin/sh.old
sudo ln -sf bash /bin/sh

vi /root/.bashrc
export  PREFIX=/armtools
export  TARGET=arm-linux
export PATH=$PATH:/armtools/arm-linux/bin:/armtools/bin

 
准备头文件:linux-2.6.14
1,建立链接
cd include/asm-arm
rm –f arch proc
ln –s arch-s3c2410 arch
ln –s proc-armv proc
2, 生成两个重要文件
include/linux/autoconf.h
include/linux/version.h
命令为:(linux-2.6.14 目录下)
yes “” | make oldconfig
make include/linux/version.h
3, 复制头文件
mkdir –p $PREFIX/$TARGET/include/
cp –dR include/linux $PREFIX/$TARGET/include/linux(linux-2.6.14 目录下)
cp –dR include/asm-arm $PREFIX/$TARGET/include/asm  (linux-2.6.14 目录下)
cp –dR include/asm-generic $PREFIX/TARGET/include/asm-generic  (linux-2.6.14 目录下)
 
一、Binutils的配置和编译安装
tar -xzvf binutils-2.16.tar.gz  
cd /build
mkdir binutils
cd bintiuils  
../../src/binutils-2.16/configure --target=arm-linux   --prefix=/tools/
(在build/binutils下)
 
make 
make install
 
二、为gcc建立一个linux内核头文件的链接
 
cd $PREFIX/$TARGET 
ln –s include sys-include
 
修改 t-linux
位置gcc3.4.4/gcc/config/arm/t-linux
修改前:TARGET_LIBGCC2_CFLAGS= -fomit-frame-pointer -fPIC
修改后:TARGET_LIBGCC2_CFLAGS= -fomit-frame-pointer -fPIC –Dinhibit_libc –D__Gthr_posix_h
注意:备份原来的t-linux文件 cp t-linux t-linux.bak
 
Patch –d  gcc-3.4.4  -p1 <flow.c.diff
Patch –d  gcc-3.4.4  -p1 <t-linux.diff
Patch –d  glibc  -p1 <ioperm.c.diff
 
Cd /build
Mkdir  gcc
Cd  gcc
 
Gcc 配置
 
../../src/gcc-3.4.4/configure /
 
--prefix=$PREFIX /
--target=$TARGET /
--enable-languages=c /
--enable-shared /
--disable-threads /
--without-headers
 
make all
make install
 
三、glibc配置安装
 
cd /build
mkdir glibc
cd glibc
 
CC=$TARGET-gcc  AR=$TARGET-ar  RANLIB=$TARGET-ranlib  /
../../src/glibc-2.3.5/configure /
--prefix=$PREFIX/$TARGET /
--build=i686-pc-linux-gnu /     
--host=arm-linux
--enable-add-ons=linuxthreads /
--with-headers=$PREFIX/$TARGET/include 
 
make
make install
 
四、全套Gcc 配置
 
首先恢复t-linux
cd /src/gcc-3.4.4/gcc/config/arm
cp t-linux.bak t-linux
 
cd /buld/gcc
../../src/gcc-3.4.4/configure /
 
--prefix=$PREFIX /
--target=$TARGET /
--enable-languages=c,c++ /
--enable-shared /
--enable-threads /
--host=i686-pc-linux-gnu
 
 
make
make install 
 
五、全套glibc配置安装
 
cd /build/glibc
 
CC=$TARGET-gcc  AR=$TARGET-ar  RANLIB=$TARGET-ranlib  /
../../src/glibc-2.35/configure /
--prefix=$PREFIX/$TARGET /
--build=i686-pc-linux-gnu /
--host=arm-linux
--enable-add-ons=linuxthreads /
--with-headers=$PREFIX/$TARGET/include 
 
make
make install

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值