在图层中找不到 bb 文件

No bb files found in layer

我是 Yocto 的新手,正在做一些入门项目。我已经添加了我自己的图层 meta-tutorial .

我的层内有以下配方文件 meta-tutorial/recipe-example/hello/hello_1.0.bb

DESCRIPTION = "Simple helloworld application"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"

SRC_URI = "file://hello.c"

S = "${WORKDIR}"

do_compile() {
        ${CC} hello.c ${LDFLAGS} -o hello
}

do_install() {
        install -d ${D}${bindir}
        install -m 0755 hello ${D}${bindir}
}

hello.c 源文件位于 meta-tutorial/recipe-example/hello/files/hello.c

当我获取 oe-init-build-env 脚本,并尝试按如下 bitbake hello_1.0.bb 构建我的配方时,我遇到了以下问题:

WARNING: No bb files in default matched BBFILE_PATTERN_meta-tutorial '^/home/Yocto-test/poky/meta-tutorial/'
ERROR: Nothing PROVIDES 'hello_1.0.bb'

这里到底是什么问题,不是很清楚?

Yocto 层有一个配置文件,描述在哪里寻找配方 .bb 和配方附加文件 .bbappend:

  • meta-tutorial/conf/layer.conf:
...
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend"
                              ^
                              |
(Look closely)-----------------
...

所以,你的错误是你把食谱放在了路径下:

meta-tutorial/recipe-example/hello
                   ^
                   |
(The mistake)-------

所以,你的食谱应该在:

meta-tutorial/recipes-example/hello
                    ^
                    |
(Correction)---------