如何使用bitbake设置/ etc / timestamp?

时间:2019-04-04 02:15:47

标签: timestamp yocto bitbake

我想创建一个能够在2038年启动的图像,以便可以在公司产品上测试一些划时代的东西。

我正通过尝试在/etc/timestamp文件上强制一个值来解决这个问题。我不确定这是否是实现此目标的好策略;因此,如果不是,那么我将问一个另外的问题,我应该采用哪种方法。

我发现image.bbclass有一个名为rootfs_upate_timestamp的函数,因此我想继承该类并覆盖该函数。

这是我创建的食谱。它位于./meta-custom-base/recipes-stuff/custom-timestamp/中。

# custom-timestamp.bb

inherit image

rootfs_update_timestamp() {
    echo "20380119000000" > ${IMAGE_ROOTFS}/etc/timestamp
}

错误是一面巨大的红色包装名称墙,在顶部显示了custom-timestamp is not a part of the base feeds

此层还有其他要安装的食谱,我还向*image.bbappend添加了一行,例如

IMAGE_INSTALL_append = " other-package-that-installs-fine"
IMAGE_INSTALL_append = " custom-timestamp"

那我为什么会收到此错误,如何确保安装了自定义/etc/timestamp

2 个答案:

答案 0 :(得分:0)

我认为这是包装问题,请参阅Martin Jansa的答案 https://yocto.yoctoproject.narkive.com/9Ceqiqs9/error-gtest-not-found-in-the-base-feed作为解决方案(添加RDEPENDS_$custom-timestamp=""):

是的,所有文件都安装在gtest-dev软件包中。

问题是默认的RDEPENDS从$ {PN} -dev到$ {PN}

meta / conf / bitbake.conf:RDEPENDS _ $ {PN} -dev =“ $ {PN}(= $ {EXTENDPKGV})”

您可以设置 ALLOW_EMPTY _ $ {PN} =“ 1” 要么 RDEPENDS _ $ {PN} -dev =“”

另请参见bitbake error package not found in base feeds

我不确定是否可以使用此选项覆盖时间戳...

答案 1 :(得分:0)

我的情况与this answer只是表面上不同。

不同之处在于,我将针对rootfs-postcommands.bbclass的{​​{1}}方法进行定位。