ARM Linux交叉编译工具链的制作

作者: 网路元素 | 来源:发表于2017-09-14 09:45 被阅读80次

    安装环境:VMware7虚拟机软件+CentOS5.2操作系统

    用普通用户登录CentOS,不具备root权限.

    首先从http://www.kegel.com/crosstool/下载crosstool0.43源码包,然后解压,解压目录为$HOME,并进入解压后的目录,修改如下相关文件(源码包下载的完整链接地址为:http://kegel.com/crosstool/crosstool-0.43.tar.gz):

    由于我们要制作的是ARM IP核的Linux交叉编译工具链,解压后我们先找到需要的Shell脚本文件demo-arm-softfloat.sh:

    修改如下内容:

    TARBALLS_DIR=$HOME/downloads

    RESULT_TOP=/opt/crosstool

    修改为:

    TARBALLS_DIR=$HOME/crosstool/downloads

    RESULT_TOP=$HOME/crosstool/tools

    第一项为编译生成过程中下载的工具源码包的存放位置,第二项为制作成功后生成的工具链存放的位置。

    该文件中有如下一项前没有加#号,则等会会执行该部分内容:

    `cat arm-softfloat.dat gcc-3.4.5-glibc-2.3.6.dat` sh all.sh --notest

    知道等会生成的时候需要用到的文件all.sh、arm-softfloat.dat、gcc-3.4.5-glibc-2.3.6.dat

    在all.sh文件中找到如下语句:

    BUILD_DIR=`pwd`/build/$TARGET/$TOOLCOMBO

    该项是在生成工具链过程中编译生成的中间代码存放的位置,将其修改为:

    BUILD_DIR=$HOME/crosstool/build/$TARGET/$TOOLCOMBO

    在arm-softfloat.dat文件中找到如下语句:

    TARGET=arm-softfloat-linux-gnu

    将其修改为:

    TARGET=arm-linux

    这样等会生成的工具链都是以arm-linux开头的。

    文件gcc-3.4.5-glibc-2.3.6.dat内容都是指定源码名称及版本。

    至此,全部工作就绪,打开终端,并进入到相应的home目录下,然后进入到该目录下的crosstool-0.43目录下,执行如下命令:执行以下命令:

    ./demo-arm-softfloat.sh

    并且此时电脑要能上网,因为编译过程需要下载相应源文件,或者可以先下载,然后存放$HOME/crosstool/downloads目录下。

    接下来就需要2-3个多钟的等待。

    相关文章

      网友评论

        本文标题:ARM Linux交叉编译工具链的制作

        本文链接:https://www.haomeiwen.com/subject/nrbrsxtx.html