你好!这里是风筝的博客,
欢迎和我一起交流。
此时uboot里是存在“pie”选项的,比较麻烦,现在我们把它去掉:
a. 输入命令:
vi arch/arm/config.mk
编辑config.mk
b. 输入命令:
/LDFLAGS_u-boot
查找这句话的位置,大概在89行的位置
c.用#号注释掉这一行:
LDFLAGS_u-boot += -pie
d. 配置u-boot为smdk2440配置文件:
make smdk2440_defconfig
e.make编译,但是会报错:
u-boot contains unexpected relocations: make: *** [checkarmreloc] Error 1
f.输入命令:
grep "checkarmreloc" * -nR
搜索错误信息出处,发现在顶层Makefile的1395行出现"checkarmreloc"
g.那我们可以不编译checkarmreloc,注释掉arch/arm/config.mk的111行的代码:
ALL-y += checkarmreloc
i.现在,我们的uboot.bin文件就只有二百多k了。