Banana Pi M2U系列之二:Uboot编译

写在前头

*.版权声明:本篇文章为原创,可随意转载,转载请注明出处,谢谢!另我创建一个QQ群82642304,欢迎加入!
*.备注:整个系列只是对我所学进行总结,记录我认为是关键的点,另我能力有限,难免出现疏漏错误,如果读者有发现请多指正,以免我误导他人!


代码获取

主线的Uboot已经支持全志的R40芯片并且支持Banana Pi M2U板子,所以我们可以clone一下主线的Uboot:

git clone git://git.denx.de/u-boot.git

默认master分支即可

交叉编译工具获取

采用linaro的交叉编译工具链,可在这里下载,建议使用6版本的交叉编译工具。
下载完毕后解压到指定目录

tar xvf xxx.tar.xz

编译

在Uboot目录下按顺序执行以下命令进行编译:

export ARCH=arm
export CROSS_COMPILE=arm-linux-gnueabihf-
export PATH=$PATH:/path/to/your/dir/bin
make Bananapi_M2_Ultra_defconfig O=out
cd out
make -j

其中第3条命令中的’/path/to/your/dir’要换成具体的交叉编译工具链目录。
执行完命令后,即可在out目录下生成u-boot-sunxi-with-spl.bin文件

遇到的错误

  1. 链接错误
arm-linux-gnueabihf-ld.bfd: u-boot-spl section `.rodata' will not fit in region `.sram'
arm-linux-gnueabihf-ld.bfd: region `.sram' overflowed by 2556 bytes
../scripts/Makefile.spl:335: recipe for target 'spl/u-boot-spl' failed

解决方法:
在开始编译开始时有一条提示
Banana Pi M2U系列之二:Uboot编译_第1张图片
提示版本过低,所以我就切换到6.3版本即可,原因未知。

你可能感兴趣的:(Banana,Pi,M2U)