yocto - 在 wic 图像中包含 tar.bz 图像
问题描述
我希望 tar.bz 映像包含在 wic 映像中,这是一个安装程序 wic 映像
我有:
IMAGE_FSTYPES += "tar.bz2"
do_image_wic[depends] += "${IMAGE_BASENAME}:do_image_tar"
IMAGE_BOOT_FILES += "${IMAGE_BASENAME}-${MACHINE}.tar.bz2;upgrade.bz2"
所以首先制作 tar.bz,但是......它没有在制作 wic 图像时部署,它位于:
build_output/work/device-type-linux/yocto-image-release/1.0-r0/deploy-yocto-image-release-image-complete/yocto-image-release-device-type-20190611214913.rootfs.tar.bz2
它不会出现在部署目录中,直到图像 yocto-image-release:do_deploy 之后,这自然发生在 wic 构建之后(现在失败)。
有没有一种安全的方法可以访问 wic 成像器?我猜工作共享不会有任何好处https://www.yoctoproject.org/docs/latest/ref-manual/ref-manual.html#structure-build-work-shared
拥有一个取决于 yocto-image-release.bb:do_deploy 的新 installer.bb 是更好的方法,以便它可以找到碎片然后制作自己的 wic?
解决方案
一种解决方案似乎涉及BBCLASSEXTEND
这样我可以构建bitbake yocto-image-release
并bitbake yocto-image-installer
修改配方(或父类)以包括:
BBCLASSEXTEND += "installer"
DEPENDS_installer += "${BPN}"
并在installer.bbclass
:
CLASSOVERRIDE = "installer"
然后我可以用 _installer 后缀覆盖值,尽管可能需要做很多工作来中和本机配方的大部分配置和方法,因为(目前)我想要构建的只是一个带有系统自己内核的 wic。
毫无疑问,以后它将拥有自己的内核配置和 initramfs,因为安装程序是专门的。
这看起来不错,因为有各种图像(-dev、-debug 等)可能都需要安装程序。但我还是想知道-installer
这两个是不是太紧了
推荐阅读
- floating-point - 在windows上安装solya工具
- ios - 为每个堆叠条形图着色
- python - Long Double 的 CPython 解析参数(用于 PyArg_ParseTuple)
- javascript - 当将多个文件作为 base64 推入数组时,它会给出 DOMException:尝试使用不可用或不再可用的对象
- spring-boot - 在微服务中保留授权服务器的最佳位置在哪里?
- python - 如果包含 x 标签,则熊猫图显示错误
- sql - 聚合2个表sql的数据
- tensorflow - Keras SavedModel 与 Tensorflow SavedModel
- ckeditor - CK Editor div 标签被替换为 p 标签(React JS)
- javascript - 在 React.js/Gatsby.js 中使用 gsap 为动画定位类名是一种好习惯吗