./arch/arm/include/asm/barriers.h:33:24: error: operator '>=' has no left operand

U-boot-2016.09移植到FS2416 Board(s3c2416 MPU)出错解决办法

问题Q:

  CC      lib/asm-offsets.s
In file included from ./arch/arm/include/asm/system.h:6:0,
                 from ./arch/arm/include/asm/cache.h:12,
                 from include/net.h:19,
                 from include/common.h:910,
                 from lib/asm-offsets.c:15:
./arch/arm/include/asm/barriers.h:33:24: error: operator '>=' has no left operand
 #if __LINUX_ARM_ARCH__ >= 7
                        ^
./arch/arm/include/asm/barriers.h:37:26: error: operator '==' has no left operand
 #elif __LINUX_ARM_ARCH__ == 6
                          ^
Kbuild:43: recipe for target 'lib/asm-offsets.s' failed
make[1]: *** [lib/asm-offsets.s] Error 1
Makefile:1277: recipe for target 'prepare0' failed
make: *** [prepare0] Error 2

解决方法A:

上面这个问题的产生是由于没有指定你所使用的CPU的平台,也就是没有CONFIG_SYS_CPU=xxxx,
而这个宏的定义在arch/arm/Kconfig 中

config TARGET_SMDK2410
    bool "Support smdk2410"
    select CPU_ARM920T

config TARGET_FS2416
    bool "Support fs2416"

因为在bool "Support fs2416"后面忘记添加了select CPU_ARM926EJS这句话,所以造成了上面的这个问题
写成这样,就解决了问题
config TARGET_SMDK2410
    bool "Support smdk2410"
    select CPU_ARM920T

config TARGET_FS2416
    bool "Support fs2416"
    select CPU_ARM926EJS 

你可能感兴趣的:(u-boot移植开发)