UBOOT 1 1 6 錯誤集合

2021-07-02 03:43:00 字數 2220 閱讀 9564

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等程式,它們不需要啟動檔案、標準庫檔案。

U Boot 1 1 6的編譯過程

從頂層makefile說起 92行 mkconfig srctree mkconfig其中的mkconfig是乙個shell指令碼,srctree預設值為u boot的頂層目錄。117行 include objtree include config.mkinclude config.mk由92行的指...

u boot1 1 6的移植 網絡卡支援

注 藍色為修改部分!driver dm9000x.c中修改 inteth init bd t bd hj end www.embedsky.net printf mac 02x 02x 02x 02x 02x 02x n bd bi enetaddr 0 bd bi enetaddr 1 bd bi...

u boot 1 1 6移植筆記(初級篇)

u boot版本 1.1.6 交叉編譯器 3.3.2 開發板 友善之臂mini2440 開發板配置 soc s3c2440 網絡卡 dm9000 nor flash am29lv160db 2m nand flash 256m sdram 64m 以原始檔已存在的 smdk2410專案為基礎進行移植...