UBOOT-1.1.6.错误集合

1.1.6的u-boot老掉牙了,用版本高的编译器编译会出现莫名其妙的问题(实际是我不懂偷笑)有的问题现在记录下!


/usr/local/arm/4.4.3/bin/../lib/gcc/arm-none-linux-gnueabi/4.4.3/libgcc.a(_udivsi3.o): In function `__aeabi_uidiv':
/opt/FriendlyARM/mini2440/build-toolschain/working/src/gcc-4.4.3/libgcc/../gcc/config/arm/lib1funcs.asm:824: multiple definition of `__udivsi3'
lib_arm/libarm.a(_udivsi3.o):/home/zl/workpace/2_learn_linux/1_learn/u-boot-1.1.6/lib_arm/_udivsi3.S:17: first defined here
/usr/local/arm/4.4.3/bin/.arm-none-linux-gnueabi-ld: error: Source object /usr/local/arm/4.4.3/bin/../lib/gcc/arm-none-linux-gnueabi/4.4.3/libgcc.a(_udivdi3.o) has EABI version 5, but target u-boot has EABI version 0
/usr/local/arm/4.4.3/bin/.arm-none-linux-gnueabi-ld: failed to merge target specific data of file /usr/local/arm/4.4.3/bin/../lib/gcc/arm-none-linux-gnueabi/4.4.3/libgcc.a(_udivdi3.o)
/usr/local/arm/4.4.3/bin/.arm-none-linux-gnueabi-ld: error: Source object /usr/local/arm/4.4.3/bin/../lib/gcc/arm-none-linux-gnueabi/4.4.3/libgcc.a(_udivsi3.o) has EABI version 5, but target u-boot has EABI version 0
/usr/local/arm/4.4.3/bin/.arm-none-linux-gnueabi-ld: failed to merge target specific data of file /usr/local/arm/4.4.3/bin/../lib/gcc/arm-none-linux-gnueabi/4.4.3/libgcc.a(_udivsi3.o)
/usr/local/arm/4.4.3/bin/.arm-none-linux-gnueabi-ld: error: Source object /usr/local/arm/4.4.3/bin/../lib/gcc/arm-none-linux-gnueabi/4.4.3/libgcc.a(_clzsi2.o) has EABI version 5, but target u-boot has EABI version 0
/usr/local/arm/4.4.3/bin/.arm-none-linux-gnueabi-ld: failed to merge target specific data of file /usr/local/arm/4.4.3/bin/../lib/gcc/arm-none-linux-gnueabi/4.4.3/libgcc.a(_clzsi2.o)
/usr/local/arm/4.4.3/bin/../lib/gcc/arm-none-linux-gnueabi/4.4.3/libgcc.a(_udivdi3.o):(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0'
Makefile:263: recipe for target 'u-boot' failed


这个是错误log

什么EABI版本高了,网上查,什么浮点啊,改cpu配置的都不起作用,本来打算换低版本的编译器了,算了,突然看到说加上参数 -nostdlib  


于是用make -nostdlib 编译通过, 

网上查到的 

问题解决:arm-none-linux-gnueabi-gcc加上-nostdlib选项即可

机理
-nostdlib
不连接系统标准启动文件和标准库文件,只把指定的文件传递给连接器。

这个选项常用于编译内核、bootloader等程序,它们不需要启动文件、标准库文件。


  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值