【问题标题】:Yocto: completely ignore bbappendYocto:完全忽略 bbappend
【发布时间】:2021-07-06 06:03:27
【问题描述】:

我正在开发一个多平台项目,因此它混合了具有适当元层的不同板。我的元图像层包含一些特定于板的 bbappend 配方,尽管我想坚持使用单个图像层存储库而不是为每个板提供图像层存储库。

那么有没有办法完全隐藏/忽略/禁用特定的 bbappend 文件?

示例: 我有用于 var-som-* 板的 bblayers。对于这样的板,我有recipes-kernel/linux-variscite_%.bbapend,所以为 var-som-* 板构建很好,但是当我为树莓派构建时会出现问题。拥有 variscite 层(以及所有 freescale 集)会给图像添加很多我不想要的东西,所以我要删除 variscite 和 freescale 层,它会创建 No recipes available for: recipes-kernel/linux-variscite_%.bbappend 错误。

【问题讨论】:

    标签: yocto bitbake


    【解决方案1】:

    幸运的是,这个问题已经得到解答: Yocto Dunfell error 'No recipes available for' with multiple machines in single custom meta layer

    所以对于那些在这里遇到同样问题的人来说是快速总结:

    1. 在您的图像元存储库中创建一个与 BBFILES 指令不匹配的文件夹结构。
    2. 将您的 .bbappend 食谱移到那里。
    3. 使用 BBFILES_DYNAMIC 指令在每个元层的基础上包含配方。

    例子:

    # thats default and commonly used way to import recipes from your image
    BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
                ${LAYERDIR}/recipes-*/*/*.bbappend"
    
    # "hide" recipes "deeper" within folder structure 
    # so they won't be included by ${LAYERDIR}/recipes-*/*/*.bbappend
    # 
    BBFILES_DYNAMIC += "\
        meta-atmel:${LAYERDIR}/dynamic-layers/meta-atmel/recipes-*/*/*.bbappend \
        meta-atmel:${LAYERDIR}/dynamic-layers/meta-atmel/recipes-*/*/*/*.bbappend \
    "
    

    【讨论】:

      猜你喜欢
      • 2012-11-19
      • 1970-01-01
      • 2020-09-30
      • 2015-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-15
      相关资源
      最近更新 更多