一. 获取源码
https://github.com/mtk-openwrt/u-boot
二. 编译步骤
编译环境为ubuntu 18.04。交叉编译工具链我用的是openwrt编译生成的工具链,并设置到环境变量,如下:
export PATH=$PATH:/root/mt8976/BPI-R3-OPENWRT-V21.02.3-main/staging_dir/toolchain-aarch64_cortex-a53_gcc-8.4.0_musl/bin
export STAGING_DIR=/root/mt8976/BPI-R3-OPENWRT-V21.02.3-main/staging_dir
1. 配置
make mt7986a_bpir3_sd_defconfig。
由命令可知,该uboot被配置了用于烧写在SD卡中,还可以选择编译烧写在SPI-NOR,SPI-NAND和eMMC,如下:
[root@ u-boot-mtksoc]#ls configs/ | grep 7986
mt7986a_bpir3_emmc_defconfig
mt7986a_bpir3_sd_defconfig
mt7986a_emmc_rfb_defconfig
mt7986a_emmc_sb_rfb_defconfig
mt7986a_sd_rfb_d

本文详细描述了如何从源码获取到编译u-boot的全过程,包括配置、编译环境的设定,以及遇到的openssl相关错误的解决方法,如手动编译安装openssl-1.1.1n并执行ldconfig。最后,文章列举了编译成功后的各种产出文件及其用途。
最低0.47元/天 解锁文章
1048

被折叠的 条评论
为什么被折叠?



