flex-builder -i mkrfs -r buildroot:imaevm -a arm64
检查过程,出错:
checking pkg-config is at least version 0.9.0... yes
checking for uuid_generate in -luuid... no
configure: error: external uuid library not found
make[1]: *** [package/pkg-generic.mk:240: /home/quanwen/work/tcu_flex/flexbuild_lsdk2108/build/rfs/rootfs_lsdk2108_buildroot_imaevm_arm64/build/e2fsprogs-1.45.6/.stamp_configured] Error 1
make: *** [Makefile:84: _all] Error 2
make: Leaving directory '/home/quanwen/work/tcu_flex/flexbuild_lsdk2108/components/rfs/buildroot'
为了实现基于OSTree的升级系统,除了要对rootfs进行改造外,initramfs也要支持OSTree,以便在启动过程中根据需要进行OSTree的版本控制。前一章节已经介绍了如何为Layerscape制作一份initramfs,这个章节将介绍如何在initramfs中增加OSTree组件。
1. 定制化buildroot,增加OSTree组件
NXP的SDK编译介绍里有给出定制化rootfs的命令,我们可以根据这个命令![image](https://github.com/robertwenhk/blog/assets/143626366/91129160-89fb-4698-95c8-df1f0a84a2f5)
flex-builder -i mkrfs -r buildroot:imaevm:custom -a arm64
去打开buildroot的定制面板,添加OSTree和需要的组件:1.1 增加OSTree组件
通过查找,OSTree提供了lib库,在
![image](https://github.com/robertwenhk/blog/assets/143626366/39497597-3008-4e43-9954-debb2aa80b70)
Target packages --> System tools
里:1.2编译buildroot生成initramfs
这个步骤和上一章节的一样:
检查过程,出错:
这是因为之前编译的产物没有清理导致的,这也告诉我们,在编译内核、rootfs等之前,先要清理之前的编译产物:
编译产物:
0 directories, 5 files quanwen@jd-dl-032:~/work/tcu_flex/flexbuild_lsdk2108$