在 yocto/poky 中使用 SELinux

using SELinux in yocto/poky

设置:我是 运行 Ubuntu 16.04,我正在尝试构建一个图像,其中包含一些来自 meta-selinux 的方法。我尝试按照自述文件和其他帮助进行操作,但我很困惑。

这是我拥有的图层:

drwxrwxr-x 19 ubuntu ubuntu 4096 Oct  3 18:31 meta/
drwxrwxr-x 14 ubuntu ubuntu 4096 Oct  3 22:49 meta-openembedded/
drwxrwxr-x  5 ubuntu ubuntu 4096 Oct  3 18:31 meta-poky/
drwxrwxr-x  8 ubuntu ubuntu 4096 Oct  3 18:31 meta-selftest/
drwxrwxr-x 16 ubuntu ubuntu 4096 Oct  3 22:51 meta-selinux/
drwxrwxr-x  7 ubuntu ubuntu 4096 Oct  3 18:31 meta-skeleton/
drwxrwxr-x 15 ubuntu ubuntu 4096 Oct  3 22:19 meta-virtualization/
drwxrwxr-x  9 ubuntu ubuntu 4096 Oct  3 18:31 meta-yocto-bsp/
drwxrwxr-x  7 ubuntu ubuntu 4096 Oct  3 23:12 openembedded-core/

我的 bblayers.conf 文件有:

# POKY_BBLAYERS_CONF_VERSION is increased each time  build/conf/bblayers.conf
# changes incompatibly
POKY_BBLAYERS_CONF_VERSION = "2"

BBPATH = "${TOPDIR}"
BBFILES ?= ""

BBLAYERS ?= " \
  /yocto/poky/meta \
  /yocto/poky/meta-poky \
  /yocto/poky/meta-yocto-bsp \
  /yocto/poky/meta-openembedded/meta-python \
  /yocto/poky/meta-selinux \
  "

当我尝试执行 bitbake core-image-minimal 时,我得到:

ERROR: Layer 'meta-python' depends on layer 'openembedded-layer', but this layer is not enabled in your configuration

所以,我将该图层添加到 bblayers.conf。

BBLAYERS ?= " \
  /yocto/poky/meta \
  /yocto/poky/meta-poky \
  /yocto/poky/meta-yocto-bsp \
  /yocto/poky/meta-trio \
  /yocto/poky/meta-openembedded \
  /yocto/poky/meta-openembedded/meta-python \
  /yocto/poky/meta-selinux \
  "

现在我得到

ERROR: Unable to start bitbake server
ERROR: Last 10 lines of server log for this session (/yocto/poky/build/bitbake-cookerdaemon.log):
    return bb.parse.handle(fn, data, include)
  File "/yocto/poky/bitbake/lib/bb/parse/__init__.py", line 117, in handle
    return h['handle'](fn, data, include)
  File "/yocto/poky/bitbake/lib/bb/parse/parse_py/ConfHandler.py", line 134, in handle
    abs_fn = resolve_file(fn, data)
  File "/yocto/poky/bitbake/lib/bb/parse/__init__.py", line 140, in resolve_file
    raise IOError(errno.ENOENT, "file %s not found" % fn)
FileNotFoundError: [Errno 2] file /yocto/poky/meta-openembedded/conf/layer.conf not found

我不知道该去哪里。 meta-openebedded 是从 repo 克隆的,我没有删除错误消息提到的 /conf/layer.conf。

在我的bblayers.conf中,我应该有

/yocto/poky/meta-openembedded/meta-oe \

而不是

/yocto/poky/meta-openembedded \