Banana Pi M2U系列之二:Uboot编译

来源:互联网 发布:杭州淘宝网店诈骗 编辑:程序博客网 时间:2024/06/06 00:09

写在前头

*.版权声明:本篇文章为原创,可随意转载,转载请注明出处,谢谢!另我创建一个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=armexport CROSS_COMPILE=arm-linux-gnueabihf-export PATH=$PATH:/path/to/your/dir/binmake Bananapi_M2_Ultra_defconfig O=outcd outmake -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

解决方法:
在开始编译开始时有一条提示
版本过低提示
提示版本过低,所以我就切换到6.3版本即可,原因未知。