首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在具有相同可见性的bitbake食谱中声明自定义变量,例如${bindir}?

如何在具有相同可见性的bitbake食谱中声明自定义变量,例如${bindir}?
EN

Stack Overflow用户
提问于 2019-02-17 20:32:19
回答 2查看 2.5K关注 0票数 1

我正在使用yocto比特面包构建一个定制的linux映像。

我有两个bitbake食谱。recipe-1recipe-2.recipe-1在linux输出映像中创建一个目录。目录名为mydir

代码语言:javascript
复制
recipe-1

SUMMARY="Creates direcory"
LICENSE = "CLOSED"

FILES_${PN} += "${sysconfdir} /mydir"

do_install_append () {
    install -d ${D}/mydir
}

让我们来看看recipe-2recipe-2希望将一个名为myfile的文件放置到mydir

代码语言:javascript
复制
recipe-2

SUMMARY="Wants to place a file in mydir created by recipe-1"
LICENSE = "CLOSED"
DEPENDS = "recipe-1"

SRC_URI = " file://myfile"

S = "${WORKDIR}"

do_install_append () {
    install -m 600 ${WORKDIR}/myfile ${D}/mydir  # bibake build complains that mydir is not found
}

问题:

在基本配方中,我在recipe-1之后提到了recipe-1,因为recipe-2依赖于recipe-1。这很好,但是bitbake抱怨mydir没有得到认可。我明白问题所在。我需要使mydirrecipe-2可见。我怎么能这么做?

问题:

我可以让mydir ( recipe-1的输出)成为我的配方构建系统中的一个全局变量吗?像${bindir}${datadir}等全局变量?如果我可以将此作为构建recipe-1的一部分,那么这可能是一个优雅的解决方案吗?

因此,我希望使用一个自定义变量,比如${mydir}do_install_append of recipe-2中?在do_install_append of recipe-2中这样做。

代码语言:javascript
复制
install -m 600 ${WORKDIR}/myfile ${D}/${mydir}

有可能吗?

EN

回答 2

Stack Overflow用户

发布于 2019-02-18 10:17:55

安装目的地对于每个菜谱是分开的,并且在安装开始时总是空的,所以您需要在其中创建任何目录。其他菜谱做什么都没有后果。

如果要从单个位置设置${mydir},请将其放入类中,并使每个菜谱继承该类。

票数 3
EN

Stack Overflow用户

发布于 2019-02-20 20:54:51

您可以在.inc文件中放置一些变量mydir,并将其包含到要求指令的两个菜谱中。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54737431

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档