gcc 4.5.1交叉编译器构建过程

1、下载地址:http://ftp.gnu.org/gnu/

下载内容:gcc,binutils,glibc

2、步骤:1)binutils

2)最小化交叉编译gcc

3)linux kernel headers

4)glibc

5)最终版gcc

3、由于binutils最新版的(2.21)需要mpc、gmp和mpfr,但是不需要交叉编译,所以直接安装x86的就行。

binutils的configure参数只需要设置target为arm-linux就可以,其他禁用选项没有必要

4、最小化编译gcc时需要去除对宿主机lib的依赖,禁用shared、threads。另外还须禁用libmudflap、multilib、libssp、libgomp、libiberty(除第一个选项外都是在arm编译条件无法通过的选项),

configure参数设置为:--target=arm-none-linux-gnueabi --disable-shared --disable-threads --without-heades --disable-libmudflap --enable-languages=c

先make all-gcc all-install之后make all-target-libgcc install-target-libgcc。因为libgcc对gcc的依赖需要先安装好gcc再编译libgcc。

5、linux kernel的存放位置一般为/usr/src/kernel目录下,fedora和archlinux(似乎只有x86的)都默认带了。如果没有可以去kernel.org下载,复制到include目录下或者在glibc编译是添加headers路径。

6、glibc的nptl的pthread需要检测unwind,c cleanup handling,gnu89 line可能没有,将相应的configure检测内容强制为成功。

gnu89 line选项如果在configure时没有设置可能会通过,但是make时会出错。CFLAGS += -fno-stack-protector也可以添加gnu89-line选项

因为没有config-name.h文件,自己根据uname -a的结果建立一个。

manmul的makefile文件有点小问题,把提示错误的隐含规则行单独出来处理。

为lowlevellock.h添加<tls.h>

将elf的makefile文件的关于_begin的sed语句的0替换为.*

sysdeps/arm/fpu/setjmp.S文件末尾添加hidden_def(__sigsetjmp)

8、编译最终版gcc

configure参数设置为:--target=arm-none-linux-gnueabi --enable-shared --enable-threads --enable-nls --enable-languages=c,c++

关于nls的支持,禁用与不禁用似乎没有什么差别,一般都会禁用。

注:加粗的一般是必须要做的,其他的可能根据环境不同有所差别。

问题一般会出在glibc的编译过程,其他都还比较顺利。

arm-none-linux-gnueabi与arm-linux区别是否提供eabi支持,针对于mini6410开发板提供的系统是需要eabi支持的否则会报段错误。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
mips gcc4.9.3交叉编译是针对MIPS架构的一款交叉编译,它能够在主机系统上生成适用于MIPS处理的可执行文件。在进行MIPS架构的开发或者嵌入式系统的移植时,使用交叉编译可以方便地在主机系统上进行开发和调试。 要下载mips gcc4.9.3交叉编译,首先需要在互联网上搜索到可靠的下载资源。可以直接在GCC官方网站上找到对应版本的交叉编译下载链接。点击链接下载后,会得到一个压缩文件,需要解压缩以获得可执行文件和相关的依赖库。 安装完成后,可以将交叉编译添加至环境变量中,这样就可以在命令行中随时调用该编译来进行交叉编译工作。根据具体的开发需求,使用合适的命令和参数来编译源代码,生成适用于MIPS架构的可执行文件。 在下载和使用交叉编译时,需要注意以下几点: 1. 确保下载的版本和架构与目标设备的要求相符,避免下载错误的版本导致编译错误。 2. 在使用交叉编译时,应了解相关的编译参数和选项,以便根据需要进行配置和设置。 3. 交叉编译过程中可能会遇到一些依赖库或者工具链的问题,需要根据实际情况安装和配置相应的依赖。 4. 使用交叉编译过程中,可以通过查阅相关的文档和教程来了解更多细节和技巧,以提高编译的效率和质量。 总之,下载和使用mips gcc4.9.3交叉编译是进行MIPS架构开发的关键步骤之一。通过正确的下载和配置,我们可以方便地在主机系统上进行MIPS架构的开发和测试工作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值