Open carloscn opened 1 year ago
ostree工具是一个依赖其他库非常多的工具,我们可以借助一些工具来帮助自己完成ostree的移植。例如buildroot就是一个非常好的工具。在LS104x中的flexbuild工具已经集成了buildroot,可以使用buildroot来完成ostree。
flexbuild
关于flexbuilder的使用,可以参考:https://docs.nxp.com/bundle/GUID-C241BB12-95F6-4D6B-A205-7EFD35551DE2/page/GUID-47B8F1F5-3A8F-45F4-A096-4D3DCDE8D07C.html
建议使用原生的bash来运行这些脚本。
先对buildroot进行配置:
flex-builder -i mkrfs -r buildroot:imaevm:custom -a arm64
之后会弹出界面:
还需要配置网络库:
flex-builder -i mkrfs -r buildroot:imaevm -a arm64
编译完之后生成的文件,解压rootfs.tar.gz文件为ramdisk文件夹:
我们可以根据自己需求来修改脚本了,我这里修改了mmc的挂在分区:
然后输出了ostree的help来测试ostree已经可以运行:
使用gen_ramdisk.sh生成脚本来打包ramdisk:
# /bin/bash cd ramdisk sudo find . | sudo cpio -H newc -o | gzip -9 > new_initramfs.cpio.gz rm -rf ../new_initramfs.cpio.gz mv new_initramfs.cpio.gz ../
Note,一定要用sudo权限运行这个脚本。
参考上一节。https://github.com/carloscn/blog/issues/192
ramdisk中已经启动了ostree:
ostree工具是一个依赖其他库非常多的工具,我们可以借助一些工具来帮助自己完成ostree的移植。例如buildroot就是一个非常好的工具。在LS104x中的
flexbuild
工具已经集成了buildroot,可以使用buildroot来完成ostree。关于flexbuilder的使用,可以参考:https://docs.nxp.com/bundle/GUID-C241BB12-95F6-4D6B-A205-7EFD35551DE2/page/GUID-47B8F1F5-3A8F-45F4-A096-4D3DCDE8D07C.html
1. 编译带有ostree的ramdisk
建议使用原生的bash来运行这些脚本。
1.1 buildroot的配置
先对buildroot进行配置:
flex-builder -i mkrfs -r buildroot:imaevm:custom -a arm64
之后会弹出界面:
还需要配置网络库:
1.2 buildroot的编译
flex-builder -i mkrfs -r buildroot:imaevm -a arm64
编译完之后生成的文件,解压rootfs.tar.gz文件为ramdisk文件夹:
我们可以根据自己需求来修改脚本了,我这里修改了mmc的挂在分区:
然后输出了ostree的help来测试ostree已经可以运行:
使用gen_ramdisk.sh生成脚本来打包ramdisk:
Note,一定要用sudo权限运行这个脚本。
2. 生成FIT image
参考上一节。https://github.com/carloscn/blog/issues/192
3. 测试
ramdisk中已经启动了ostree: