嵌入式 Linux C ARM 嵌入式开发程序员

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

2017-09-14  本文已影响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个多钟的等待。

上一篇下一篇

猜你喜欢

热点阅读