【问题标题】:Getting the current layer folder from a recipe从配方中获取当前层文件夹
【发布时间】:2016-12-09 04:20:17
【问题描述】:
  • 我为我的公司应用程序定义了一个层,它们都使用相同的非标准许可证。

  • 我想将我的许可证文件放在一个中心位置(比如图层根目录)。

我的问题是:

如何从我的配方中获取层路径?所以我可以写这样的东西:

LIC_FILES_CHKSUM = "file://${LAYER_ROOT_PATH}/license;md5=ddab9d0ed499556ec3ce30314a81b47a

【问题讨论】:

    标签: yocto recipe


    【解决方案1】:

    有更好的方法来做到这一点:

    将您的许可文件,我们称之为customlicense,放在您层中的一个目录中(例如licenses),然后将该路径添加到搜索许可的路径中,在您的layer.conf 文件中:

    LICENSE_PATH += "${LAYERDIR}/licenses"
    

    现在您可以在 licenses 目录中引用许可证,而无需指定如下路径:

    LIC_FILES_CHKSUM = "file://customlicense;md5=ddab9d0ed499556ec3ce30314a81b47a"
    

    【讨论】:

    • 如果使用这种方法,LIC_FILES_CHKSUM 的赋值会是什么样子?
    • 我已将其添加到我的答案中。
    • @LasseMeyer:我按照你的建议做了,但仍然有错误LIC_FILES_CHKSUM points to an invalid file。它试图在构建目录中找到这个文件:build/tmp-angstrom-glibc/work/armv7at2hf-neon-angstrom-linux-gnueabi/vmhubd-server/7.2-r0/
    • 尝试通过这次对话并尝试建议:lists.yoctoproject.org/pipermail/yocto/2013-June/014314.html
    • 不适用于 yocto 2.7:LIC_FILES_CHKSUM 指向无效文件
    【解决方案2】:

    您可以使用指向 poky 层的${COREBASE} BB 变量来引用您的层根,但这可能不是处理您提到的许可证文件问题的最佳方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-22
      • 2012-05-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-29
      相关资源
      最近更新 更多