【问题标题】:Bitbake not finding recipesBitbake 找不到食谱
【发布时间】:2015-08-19 22:27:46
【问题描述】:

我在 openembedded 环境中运行 bitbake,我认为它丢失了 99% 的配方文件。我在我的 conf 目录中编辑了 local.conf 文件,它有一行:

BBFILES := "/blah/blah/blah/rootfs/openembedded/recipes/*/*.bb"

如果我检查该路径:

ls -l /blah/blah/blah/rootfs/openembedded/recipes/*/*.bb

我看到了大量的 bb 文件。

认为给出了我需要做的所有文档,但是当我运行 bitbake 时,我收到以下错误:

bitbake base-image
NOTE: Handling BitBake files: \ (0015/0015) [100 %]
Parsing of 15 .bb files complete (14 cached, 1 parsed). 15 targets, 0 skipped, 0 masked, 0 errors.
ERROR: Nothing PROVIDES 'base-image'

Build Configuration:
BB_VERSION        = "1.10.2"
METADATA_BRANCH   = "<unknown>"
METADATA_REVISION = "8c6a371"
TARGET_ARCH       = "arm"
TARGET_OS         = "linux-gnueabi"
MACHINE           = "at91sam9x5ek"
DISTRO            = "angstrom"
DISTRO_VERSION    = "v20131031"
TARGET_FPU        = "soft"

Unknown Event: <bb.event.NoProvider instance at 0x1b70a28>
ERROR: Nothing PROVIDES 'base-image'
Command execution failed: Traceback (most recent call last):
  File "/home/max/workspace/tacbio/tacbio-kernel-2_6_39/rootfs/openembedded/bitbake/lib/bb/command.py", line 88, in runAsyncCommand
commandmethod(self.cmds_async, self, options)
  File "/home/max/workspace/tacbio/tacbio-kernel-2_6_39/rootfs/openembedded/bitbake/lib/bb/command.py", line 174, in buildTargets
command.cooker.buildTargets(pkgs_to_build, task)
  File "/home/max/workspace/tacbio/tacbio-kernel-2_6_39/rootfs/openembedded/bitbake/lib/bb/cooker.py", line 782, in buildTargets
taskdata.add_provider(localdata, self.status, k)
  File "/home/max/workspace/tacbio/tacbio-kernel-2_6_39/rootfs/openembedded/bitbake/lib/bb/taskdata.py", line 354, in add_provider
self.add_provider_internal(cfgData, dataCache, item)
  File "/home/max/workspace/tacbio/tacbio-kernel-2_6_39/rootfs/openembedded/bitbake/lib/bb/taskdata.py", line 383, in add_provider_internal
raise bb.providers.NoProvider(item)
NoProvider: base-image

所以,路径似乎没有错,我有数百个 bb 文件,但 bitbake 只看到 15 个食谱。知道我错过了什么吗?不幸的是,我的特定板附带的文档已经过时了好几年,所以不再与 OE 或 Yocto 完全匹配。

【问题讨论】:

    标签: openembedded bitbake


    【解决方案1】:

    我发现有一个属于不同层的 local.conf 覆盖了我的 BBFILES 变量。我修复了路径并解决了问题。

    不确定它是否对任何人有用,但为了让我的多个层的食谱一起工作,我的 BBFILES 行看起来像这样。

     BBFILES := "${HOME}/workspace/tacbio/tacbio-kernel-2_6_39/rootfs/openembedded/recipes/*/*.bb"
     BBFILES += "${HOME}/workspace/tacbio/tacbio-kernel-2_6_39/rootfs/openembedded/oe_at91sam/recipes/*/*.bb"
    

    我忘记了可以附加 +=。

    【讨论】:

      【解决方案2】:

      我最近遇到了类似的问题。我添加了一个食谱并收到以下错误。在指出根本问题时没有完全描述性。
      我已经添加到 IMAGE_INSTALL_append = " maxtouch "

      wwright@sammy:~/dev/prod/angstrom$ bb -v atmel-maxtouch -c fetch NOTE: Started PRServer with DBfile: /home/wwright/dev/prod/angstrom/cache/prserv.sqlite3, IP: 127.0.0.1, PORT: 58436, PID: 37407 Loading cache: 100% |######################################################################################| ETA: 00:00:00 Loaded 2723 entries from dependency cache. WARNING: No recipes available for: /home/wwright/dev/prod/angstrom/sources/meta-angstrom/recipes-tweaks/openjdk/openjdk-7_%.bbappend ***ERROR: Nothing PROVIDES 'maxtouch'***

      我的 layer.conf 文件

      # We have recipes-* directories, add to BBFILES BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \ ${LAYERDIR}/recipes-*/*/*.bbappend \ "

      我创建了一个新的目录结构,并通过这样做增加了一个目录级别 我在 meta-methode/recipes-core/touch/atmel 中添加了一个未找到的配方解决方案将目录级别添加到 BBFILES var。

      BBFILES += " ${LAYERDIR}/recipes-*/*/*/*.bb"
      
      meta-methode/recipes-core
      ├── base-files
      │   ├── base-files_3.0.%.bbappend
      │   └── files
      │       └── display-settings.sh
      ├── init-ifupdown
      │   ├── files
      │   │   └── interfaces
      │   └── init-ifupdown_%.bbappend
      ├── systemd
      │   ├── files
      │   ├── systemd-serialgetty.bbappend
      │   └── systemd-serialgetty.bb.save
      ├── touchscreen
      │   └── atmel
      │       └── maxtouch_1.23.bb
      └── util-linux
          └── util-linux_2.%.bbappend
      

      最近。 即无法判断我是否正在运行我的附加文件。 (拼写错误的 bbapend) 所以,发现它对调试很有帮助 编辑 recipexx.bbappend 添加一个变量或搜索一个已经在追加中的变量。

      MYVAR = "MyAppend"

      bitbake-layers 显示附加 | grep MYVAR

      或者...

      bitbake -v recipexx -c build -f -D | grep MYVAR

      【讨论】:

        猜你喜欢
        • 2015-06-23
        • 1970-01-01
        • 2021-11-01
        • 2019-12-05
        • 1970-01-01
        • 1970-01-01
        • 2018-04-21
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多