【问题标题】:Building meta-virtualization layer in yocto在 yocto 中构建元虚拟化层
【发布时间】:2017-06-15 18:52:37
【问题描述】:

我正在尝试在我的 yocto 项目中添加元虚拟化层。该层依赖于 openembedded-core 和 meta-openembedded 提供的多个层。以下是添加元虚拟化层及其依赖项后我的 bblayers.conf 文件的结构。

BBLAYERS ?= " \
/home/mshehery/Downloads/git/Yocto/poky/meta \
/home/mshehery/Downloads/git/Yocto/poky/meta-yocto \
/home/mshehery/Downloads/git/Yocto/poky/meta-yocto-bsp \
/home/mshehery/Downloads/git/Yocto/poky/meta-oe \
/home/mshehery/Downloads/git/Yocto/poky/meta-virtualization \
/home/mshehery/Downloads/git/Yocto/poky/meta-networking \
/home/mshehery/Downloads/git/Yocto/poky/meta-filesystems \
/home/mshehery/Downloads/git/Yocto/poky/meta-python \
"

但是,当我尝试在元虚拟化层中构建 docker 时,遇到以下错误

WARNING: Host distribution "Ubuntu-16.04" has not been validated with this version of the build system; you may possibly experience unexpected failures. It is recommended that you use a tested distribution.
Loading cache: 100% |####################################################################################################################################################| ETA:  00:00:00
Loaded 1078 entries from dependency cache.
NOTE: Error during finalise of /home/mshehery/Downloads/git/Yocto/poky/meta-oe/recipes-devtools/tcltk/tk_8.6.6.bb                                                        | ETA:  --:--:--
ERROR: ParseError at /home/mshehery/Downloads/git/Yocto/poky/meta-oe/recipes-connectivity/libqmi/libqmi_1.16.0.bb:12: Could not inherit file classes/bash-completion.bbclass

如果我没记错的话,yocto 项目的当前版本使用 openembedded 作为他们的构建系统。那么,是否需要将 openembedded-core 集成到我的 yocto 项目中以添加元虚拟化层,或者它是否已经默认存在于 yocto 项目中?

【问题讨论】:

  • 能否添加您正在使用的版本/分支? (对于所有包含的图层)。不,您不需要添加 openembedded-core,该层是您列表中的第一个 (meta)。
  • @Anders yo0cto 的版本是 Yocto 2.2 (Morty)。我从以下链接下载的图层 (layers.openembedded.org/layerindex/branch/master/layers)
  • 我能够使用 oe-core 成功构建元虚拟化层,但是当我尝试将这些层添加到我的 yocto 项目时出现问题。
  • 如果你删除了meta-virtualization,你能构建剩下的吗? bash-completions.bbclass 应该在 meta/classes...
  • 在添加元虚拟化层及其依赖项之前,我能够构建 core-image-minimal 映像。缺少 bash-completions.bbclass 只是错误之一。我可以将此文件从 openembedded-core/meta/classes 目录添加到 poky/meta/classes 中。但随后它开始显示多个语法错误,其中 bitbake 无法解析配方的某些部分。真正的问题是将元虚拟化层与 poky 集成,这是我无法做到的。

标签: linux docker yocto lxc


【解决方案1】:

讨论的简短摘要:

  • 对所有层使用相同的发布分支(除非您真的知道自己在做什么。

  • 检查您的所有层在bblayers.conf 中是否已激活。

【讨论】:

猜你喜欢
  • 2018-12-07
  • 2012-08-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-29
  • 2020-07-28
  • 1970-01-01
相关资源
最近更新 更多