u-boot编译过程遇到的问题合集(重点解析遇到的各种问题以及下面参考文章的小问题)
第一步
找到源码地址,找到想要的版本,将源码拿到 linux 环境下解压缩,编译 uboot
链接: 参考文章
第二步:
问题一
include/linux/compiler-gcc.h:93:30: fatal error: linux/compiler-gcc5.h: No such
file or directory
解决方法,得在include/linux/下
~$ mv compiler-gcc4.h compiler-gcc5.h
问题二
/home/xiaomo/u-boot-smdkc100/arch/arm/include/asm/io.h:80: multiple definition of __raw_writesw' arch/arm/cpu/armv7/s5p-common/cpu_info.o:/home/xiaomo/u-boot-smdkc100/arch/arm/include/asm/io.h:80: first defined here arch/arm/cpu/armv7/s5p-common/sromc.o: In function __raw_writesb’:
修改头文件io.h(在arch/arm/include/asm下)
对应链接: 参考文章
问题三:
arch/arm/lib/board.c:67:6: error: ‘coloured_LED_init’ aliased to external symbol ‘__coloured_LED_init’
void coloured_LED_init(void)
^
arch/arm/lib/board.c:84:6: error: ‘blue_led_off’ aliased to external symbol ‘__blue_led_off’
void blue_led_off(void) attribute((weak, alias(“__blue_led_off”)));
修改文件board.c:(在arch/arm/lib/下)
链接: 参考文章
问题四:
common/main.c:31:6: error: ‘show_boot_progress’ aliased to external symbol ‘__show_boot_progress’
void show_boot_progress (int val) attribute((weak, alias(“__show_boot_progress”)));
解决方法:
去掉__show_boot_progress 函数的inline修饰,函数效率略有降低,但对整个编译过程改动几乎不用改动
链接: 参考文章
如何注释掉void show_boot_progress (int val) attribute((weak, alias(“__show_boot_progress”))) ,则会出现以下问题

399

被折叠的 条评论
为什么被折叠?



