在Yocto中继承图像类时,不会调用do_compile

问题描述 投票:0回答:1

我需要继承图像类(*.bbclass)并从图像配方运行脚本,但我的do_compile没有被调用。

为简单起见,我在这里提供了来自poky源码的最小样本代码,它做了我想要的类似的事情。

我在我自己创建的图层inherit-test_0.1.bb下创建了一个名为meta-raxy的测试配方。

这是inherit-test_0.1.bb配方文件,

SUMMARY = "Inherit Test Application"
LICENSE = "CLOSED"

inherit image

do_compile () {
    echo MyRecipe
}

当我在设置bitbake inherit-test后由oe-init-build-env编译此配方时,我没有看到我的do_compile被编译,因为工作目录poky/build/tmp/work/qemux86-poky-linux/inherit-test/0.1-r0/temp/log.do_compile中没有日志文件与行MyRecipe

如果我删除inherit image,我看到do_compile编译如下所示在日志文件中,

DEBUG: Executing shell function do_compile
MyRecipe
DEBUG: Shell function do_compile finished

任何帮助将非常感激。

yocto bitbake
1个回答
2
投票

继承“image”表示do_compile[noexec] = "1"等等(正如你在image.bblcass文件中看到的那样),这意味着不会执行do_compile任务。这是Yocto为删除任务提供的几种方式之一。

© www.soinside.com 2019 - 2024. All rights reserved.