when i make the u-boot,use this cmd: [root@localhost u-boot-1.1.3]# make CROSS_COMPILE=armv4l-unknown-linux- it shows many error,the info like this: ...... eth.c > .depend make[1]: Leaving directory `/root/cdroom/3bootload/u-boot-1.1.3/drivers' make[1]: Entering directory `/root/cdroom/3bootload/u-boot-1.1.3/drivers' armv4l-unknown-linux-gcc -g -Os -fno-strict-aliasing -fno-common -ffixed-r8 -mshort-load-bytes -msoft-float -D__KERNEL__ -DTEXT_BASE=0x33F80000 -I/root/cdroom/3bootload/u-boot-1.1.3/include -fno-builtin -ffreestanding -nostdinc -isystem /opt/host/armv4l/lib/gcc-lib/armv4l-unknown-linux/2.95.2/include -pipe -DCONFIG_ARM -D__ARM__ -mapcs-32 -march=armv4 -Wall -Wstrict-prototypes -c -o cfi_flash.o cfi_flash.c In file included from cfi_flash.c:48: /root/cdroom/3bootload/u-boot-1.1.3/include/asm/processor.h:52: parse error before `1' /root/cdroom/3bootload/u-boot-1.1.3/include/asm/processor.h:52: warning: no semicolon at end of struct or union /root/cdroom/3bootload/u-boot-1.1.3/include/asm/processor.h:54: parse error before `}' /root/cdroom/3bootload/u-boot-1.1.3/include/asm/processor.h:58: field `insn' has incomplete type make[1]: *** [cfi_flash.o] Error 1 make[1]: Leaving directory `/root/cdroom/3bootload/u-boot-1.1.3/drivers' make: *** [drivers/libdrivers.a] Error 2
after goole searching,i got this,and the problem is solved.
************************** 解 ********************
看了lane大哥的《移植uboot到ARMer9开发系统上》帖子,同样做了以下修改,过了。 修改uboot目录下的Makefile,将 ifeq ($(ARCH),arm) CROSS_COMPILE = arm-linux- endif 修改成 ifeq ($(ARCH),arm) CROSS_COMPILE = /opt/host/armv4l/bin/armv4l-unknown-linux- endif 修改processor.h中: gedit /root/cdroom/3bootload/u-boot-1.1.3/include/asm-arm/processor.h union debug_insn { u32 arm; u16 thumb; } 修改成: union debug_insn { u32 arm_mode; u16 thumb_mode; }