PetaLinux 2018.3下,image.ub的生成过程由下列两个文件定义
components/yocto/source/aarch64/layers/core/meta/classes/kernel-uimage.bbclass
components/yocto/source/aarch64/layers/core/meta/classes/kernel-uboot.bbclass
使用下列命令,可以从vmlinux生成image.ub.
aarch64-linux-gnu-objcopy -O binary -R .note -R .comment -S vmlinux linux.bin
gzip -9 linux.bin
ls -l -h
mv -f linux.bin.gz linux.bin
mkimage -f rootfs.its image.ub
在PetaLinux里,使用的objcopy是aarch64-xilinx-linux-objcopy,可以由SDK里的aarch64-linux-gnu-objcopy替代。
生成image.ub, 需要mkimage,在Ubuntu下,可以使用sudo apt install u-boot-tools安装mkimage.