接下来开始安装交叉编译工具链
$ cd /usr/bin
$ sudo rm gcc
$ sudo ln -sf gcc-4.1 gcc
$ gcc -v
得到如下显示:
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v –enable-languages=c,c++ –prefix=/usr –enable-shared –with-
system-zlib –libexecdir=/usr/lib –without-included-gettext –enable-threads=posix –enable-nls –
with-gxx-include-dir=/usr/include/c++/4.1.3 –program-suffix=-4.1 –enable-__cxa_atexit –enable-
clocale=gnu –enable-libstdcxx-debug –with-tune=generic –enable-checking=release i486-linux-gnu
Thread model: posix
gcc version 4.1.3 20080704 (prerelease) (Ubuntu 4.1.2-27ubuntu1)
表明原先指向gcc-4.4的的符号链接已经被重新指向新安装的gcc-4.1,系统中默认的gcc版本为4.1。
5.安装binutils-2.18
下载binutils-2.18, 将其解压缩后,进入binutils顶层目录,运行
$ ./configure –prefix=/home/rookiesean/temp/binutils –disable-nls
$ make all
$ make install
其中–prefix=/home/rookiesean/temp/binutils表示生成可执行文件的存放位置,可自定义。
编译成功后在/home/rookiesean/temp/binutils/bin/中就生成了ld as程序的可执行文件, 到/usr/bin目录下面将系统
默认的ld和as替换成2.18版本的:
$ cd /usr/bin
$ sudo rm as ld
$ sudo ln -sf /home/rookiesean/temp/binutils/bin/ld ld
$ sudo ln -sf /home/rookiesean/temp/binutils/bin/as as
$ ld -v; as -v
得到如下显示:
GNU ld (GNU Binutils) 2.18
GNU assembler version 2.18 (i686-pc-linux-gnu) using BFD version (GNU Binutils) 2.18
6,在这些做完之后还是会有一个错误:version.c:40: error: syntax error before string constant
原因:老版本的glibc在/bin/sh为dash的时候会出现这个问题,一种解决方法是把/bin/sh重定向为bash,在创建完交
叉编译器后可以将/bin/sh重新改回dash,运行如下面命令修改/bin/sh:
解决办法是:cd /bin
sudo mv /bin/sh sh.old
sh -version
显示的结果是:
GNU bash, version 4.1.5(1)-release (i486-pc-linux-gnu)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
说明成功。
7.进入crosstool-0.43目录:
执行命令:./demo-arm-softfloat.sh进行编译,时间比较长,耐等。。。。。。
在此还是要推荐一下我网站:www.mifango.com 米返购物网 在这个网站上购物你完全不用担心货的问题,因为你是通过我这个网站上进入到像京东,淘宝,天猫,苏宁易购等网站上购物的,我这只不过是提供有一个链接,有人会问,我直接进入像淘宝,京东等这样的官网不就可以了吗,其实则不然,从我的网站上进入一些大的商城你能拿到一定的返利的。
比如在京东上买了一件衣服可能需要200块钱,但是从我的网站上进入的话,你可能只需要190块钱就可以搞定的哟。