layer - 在yocto中的layer.conf中使用require

标签 layer yocto bitbake

考虑到 yocto 给予开发人员的所有自由,我有一个问题。 我想让 my_file.inc 仅适用于一个特定元层中的食谱。我知道,例如,在 local.conf 中使用 INHERIT 关键字将使 my_class.bbclass 文件对每个配方全局可用。

添加以下内容是一个好习惯吗:

require my_file.inc

在layer.conf里面?或者我应该将my_file.inc更改为my_file.bbclass,并将INHERIT =“my_file.bbclass”添加到layer.conf? 还有其他可能性吗?

最佳答案

即使看起来可行,但从技术上讲,您的两种方法都不是完全正确的。关键点是,所有 .conf 文件都会首先被解析,并且它们包含的所有内容在整个构建过程中都是全局可见的。因此,如果您通过 layer.conf 文件添加某些内容,它不会通过意外的位置被拉入,它也不会仅限于该层,因此可能会导致其他位置的损坏。

虽然我没有一个真正好的、干净的解决方案,但也许以下内容可以帮助您:

您可以让自定义配方对 DISTRO_FEATURESMACHINE_FEATURES 中的某些关键字使用react。然后您可以创建一个两阶段的方法:

  1. local.conf(或您的 MACHINEDISTRO 或任何配置)中添加所需的关键字

  2. 让食谱对其使用react。如果您在多个地方需要该机制,那么将其倒入层带来的 .bbclass 中可能会很有用,并且您可以将其拉入相应的配方中。

这样效果就得到了正确的控制。

关于layer - 在yocto中的layer.conf中使用require,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55297773/

相关文章:

python - 在keras自定义损失中使用层输出

javascript - 如何正确添加图层控件?

yocto - 在食谱 Yocto 项目中使用 pip install 命令

patch - Bitbake 构建错误,Patch 不应用 bitbake 错误?

配置失败 `PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.12.3)'

linux - bzImage 和 grub 配置未安装到 yocto dsk 构建中的 .dsk

嵌套在自定义 Keras 层内的 Keras 模型

logging - 哪些层应该记录异常?

openssl - 如何替换 Yocto 中的 OpenSSL 软件包?

yocto - 如何使用 yocto wic 创建自定义分区布局?