IMX6ULL编译20版本的uboot
前言:最近在学校原子哥的imx6ull 例程中的uboot版本比较老为16版本的,所以想着编译一下最新版本的,于是在网上搜索教程,发现大家再网上的教程中下载的nxp提供的uboot源码的网址已经失效,于是不懈努力找到了nxp在github上的代码库
获取源码
GitHub - nxp-imx/uboot-imx: i.MX U-Boot
git clone https://github.com/nxp-imx/uboot-imx
注:下载可能比较慢 需要用科学的手段
如果网络不给力,可以直接选择我上传好的资源包
IMX6ULL的uboot源码以及编译工具下载
查看并切换分支
git branch -a
git checkout imx_v2020.04_5.4.24_2.1.0
git pull
更新编译工具链
原子哥用的编译工具是4.6 吧 我们更新一下编译工具链
-
下载交叉编译工具源码
-
解压
使用工具 如winscp 将其传输至linux服务器中,使用 命令解压
sudo tar -vxf gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar_2.TAR
目录结构如下 将交叉编译工具放置在cross_compiler中
-
设置编译参数
打开 下载好的uboot源码 找到顶层makefile 增加下面几行
CURRENT_PATH = $(shell pwd) ARCH=arm GCC_PREFIXES=arm-linux-gnueabihf- CROSS_COMPILE=$(CURRENT_PATH)/../../cross_compiler/gcc-arm-linux-gnueabihf/bin/$(GCC_PREFIXES)
这几行主要是指定了架构为arm 交叉编译工具链的前缀为arm-linux-gnueabihf- 以及编译工具链的位置 具体到交叉编译工具的bin目录下 这个取决于自己的环境 做修改
编译
make distclean #清除一下编译环境
make mx6ull_14x14_evk_defconfig #初始化配置文件
make #编译
配置文件在configs中
编译成功的界面如图所示
我们 ls -l 看一下 可以发现编译成功的 u-boot.bin
烧写到SD卡
插入读卡器 SD卡 使用imxdownload 将其烧录至sd卡
检测效果
可以看到版本变成了2020年的老版本 屏幕上也显示了NXP的logo