Yocto/Bitbake 将空目录添加到 rootfs Embedded Linux

Yocto/Bitbake recipe for adding empty directory to rootfs Embedded Linux

是否有向 rootfs 添加新的空目录的方法?我尝试将其添加到我的一个 bbappend 文件中:

do_install() {
   install -d ${D}/tmp/myNewDir
}
FILES_${PN} += "/tmp/myNewDir"

但我遇到了一个非描述性错误,Function failed: do_install

在我们的图像配方中,我们有类似这样的东西来创建一个新目录:

create_data_dir() {
   mkdir -p ${IMAGE_ROOTFS}/data
}

IMAGE_PREPROCESS_COMMAND += "create_data_dir;"

有几种方法。 StackedUser已经描述了图像命令方式。

您也可以尝试扩展您的一些食谱(就像您在问题中所做的那样)。我猜您看到错误是因为您正在覆盖 do_install 任务。您可能想要扩展它,因此您应该将 _append 添加到任务名称,即:

do_install_append () {
   install -d ${D}/tmp/myNewDir
}

顺便说一句,您遇到的错误 "Function failed: do_install" 通常会显示错误代码或有问题的命令。也许有什么。

另一种方法是创建一个简单的食谱并将其添加到图像中,这是一个存根:

SUMMARY = "XXX project directory structure"
# FIXME - add proper license below
LICENSE = "CLOSED"
PV = "1.0"

S = "${WORKDIR}"

inherit allarch

do_install () {
        install -d ${D}/foo/bar
}

FILES_${PN} = "/foo/bar"