首页 理论教育 零点起步:开发环境构建

零点起步:开发环境构建

时间:2023-10-31 理论教育 版权反馈
【摘要】:一套完整的交叉编译工具链对嵌入式Linux的开发非常重要,通常可以使用Crosstool来进行构建。可以从http://www.kegel.com/crosstool获取Crosstool的最新版。1)解压缩crosstool-0.43.tar.gz,把补丁文件glibc-2.3.6-version-info.h_err.patch复制到crosstool-0.43/patches/glibc-2.3.6/目录下,它修改了glibc-2.3.6/csu/Makefile里面的一个小错误,导致生成的version-info.h文件编译出错。2)修改demo-arm-softfloat.sh脚本,指定编译过程中所需软件包的存放路径TARBALLS_DIR=$HOME/downloads,指定交叉编译工具链的存放路径RESULT_TOP=/usr/local/crosstool,需要事先创建好该路径,保证其具有可写的权限。5)最后以普通用户身份执行./demo-arm-softfloat.sh,大约1~2个小时就编译好了。

零点起步:开发环境构建

本文使用Debian GNU/Linux的操作系统作为开发平台。首先从http://www.debian.org获取Debian最新的稳定版。正确安装好Debian后,下一步就要建立一套跨平台的交叉编译工具链。

一套完整的交叉编译工具链对嵌入式Linux的开发非常重要,通常可以使用Crosstool来进行构建。Crosstool是一套脚本,用于编译和测试大多数体系结构的各种GCC和Glibc的版本组合,同时为工具链源码包提供了补丁。

可以从http://www.kegel.com/crosstool获取Crosstool的最新版。可以参考其中的crosstool-howto.html来进行选择和配置。由于S3C2440A芯片没有硬件浮点数,很多软件只能采用软件浮点数的交叉编译工具链编译,否则就会在编译结束前的链接那一步出现不支持softfloat的错误。解决这个错误的唯一方法就是制作一个支持softfloat的交叉编译工具链。

1)解压缩crosstool-0.43.tar.gz,把补丁文件glibc-2.3.6-version-info.h_err.patch复制到crosstool-0.43/patches/glibc-2.3.6/目录下,它修改了glibc-2.3.6/csu/Makefile里面的一个小错误,导致生成的version-info.h文件编译出错。

2)修改demo-arm-softfloat.sh脚本,指定编译过程中所需软件包的存放路径TARBALLS_DIR=$HOME/downloads,指定交叉编译工具链的存放路径RESULT_TOP=/usr/local/crosstool,需要事先创建好该路径,保证其具有可写的权限。(www.xing528.com)

3)修改arm-softfloat.dat文件,指定TARGET=arm-linux,保证编译出来的工具是常用的名字。

4)修改all.sh脚本,指定安装路径为PREFIX=${PREFIX-$RESULT_TOP/$TOOLCOMBO}。

5)最后以普通用户身份执行./demo-arm-softfloat.sh,大约1~2个小时就编译好了。此时将交叉编译工具链加入PATH环境变量中就可以使用了。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈