原创 u-boot在44B0上的移植实践(1)

2010-3-22 19:48 1399 2 2 分类: MCU/ 嵌入式

首先感谢在网络上所有u-boot移植的资料,感谢那些blog的主人,感谢Google,让我顺利上手,在今后的实验过程中出现问题,还要依靠你们。


今天的日志,主要记录第一次make出现的两个常见问题。


No.1  按照大部分文章的向导,我做了最基本的实验:
# make distclean
# make B2_config
# make
在make的过程中,出现:
isystem /usr/local/arm/bin/../lib/gcc-lib/arm-linux/3.2/include -pipe  -DCONFIG_ARM -D__ARM__ -march=armv4 -mtune=arm7tdmi -msoft-float -mabi=apcs-gnu -Uarm -Wall -Wstrict-prototypes -c -o hello_world.o hello_world.c
cc1: invalid option `abi=apcs-gnu'
在网上查到博客“senglen.cublog.cn ”,有如下的解决方法:
出错的文件是/cpu/s3c44b0/下的config.mk:将
PLATFORM_CPPFLAGS +=$(call cc-option,-mapcs-32,-mabi=apcs-gnu)
改成:
PLATFORM_CPPFLAGS +=$(call cc-option,-mapcs-32,$(call cc-option,-mabi=apcs-gnu),)


No.2 修改了第一个错误后,继续make,出现了如下的报错:
make[1]: *** No rule to make target `hello_world.srec', needed by `all'.  Stop.
make[1]: Leaving directory `/home/mort/src/targa/u-boot/u-boot-TOT/examples'
make: *** [examples] Error 2
还是参考了博客“senglen.cublog.cn ”,有如下的解决方法:
打开 examples/Makefile   
    119 $(LIB): .depend $(LIBOBJS)
    120         $(AR) crv $@ $(LIBOBJS)
    121
    122 %:      %.o $(LIB)
    123         $(LD) -g $(EX_LDFLAGS) -Ttext $(LOAD_ADDR) \
    124                 -o $@ -e $(<:.o=) $< $(LIB) \
    125                 -L$(gcclibdir) -lgcc
    126 %.srec: %
    127         $(OBJCOPY) -O srec $< $@ 2>/dev/null
    128
    129 %.bin:  %
    130         $(OBJCOPY) -O binary $< $@ 2>/dev/null
把126行和129行改为:
     %.srec: %.o
     %.bin: %.o
继续make,顺利make出u-boot.bin

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
2
关闭 站长推荐上一条 /3 下一条