本文主要是介绍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文件
遇到的错误
- 链接错误
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
解决方法:
在开始编译开始时有一条提示
提示版本过低,所以我就切换到6.3版本即可,原因未知。
这篇关于Banana Pi M2U系列之二:Uboot编译的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!