10 Images (镜像或映像)
OpenEmbedded 构建系统提供了多个示例映像,以满足不同的需求。当你使用 bitbake 命令时,你将提供一个 "顶层 "配方,该配方基本上可以开始构建您想要的映像类型。
The OpenEmbedded build system provides several example images to satisfy different needs. When you issue the bitbake command you provide a “top-level” recipe that essentially begins the build for the type of image you want.
注意
构建不包含 GNU General Public License Version 3 (GPLv3)、GNU Lesser General Public License Version 3 (LGPLv3) 和 GNU Affero General Public License Version 3 (AGPL-3.0) 组件的镜像仅适用于 core-image-minimal 镜像。此外,如果您想构建映像并验证它不包含 GPLv3 和类似许可的组件,则必须在使用 BitBake 命令构建映像之前,在映像配方文件中做出以下更改:
INCOMPATIBLE_LICENSE = “GPL-3.0* LGPL-3.0*”
或者,您也可以调整 local.conf 文件,为所有必须适用许可证限制的镜像都加上这一行:
INCOMPATIBLE_LICENSE:pn-your-image-name = “GPL-3.0* LGPL-3.0*”
Note
Building an image without GNU General Public License Version 3 (GPLv3), GNU Lesser General Public License Version 3 (LGPLv3), and the GNU Affero General Public License Version 3 (AGPL-3.0) components is only tested for core-image-minimal image. Furthermore, if you would like to build an image and verify that it does not include GPLv3 and similarly licensed components, you must make the following changes in the image recipe file before using the BitBake command to build the image:
INCOMPATIBLE_LICENSE = “GPL-3.0* LGPL-3.0*”
Alternatively, you can adjust local.conf file, repeating and adjusting the line for all images where the license restriction must apply:
INCOMPATIBLE_LICENSE:pn-your-image-name = “GPL-3.0* LGPL-3.0*”
在 poky Git 仓库中,可以使用以下命令显示源代码目录中包含镜像配方文件的目录列表:
From within the poky Git repository, you can use the following command to display the list of directories within the Source Directory that contain image recipe files:
$ ls meta*/recipes*/images/*.bb
以下是支持的配方列表:
Here is a list of supported recipes:
-
build-appliance-image: 示例虚拟机,包含使用构建系统运行构建所需的所有组件以及构建系统本身。你可以使用 VMware Player 或 VMware Workstation 启动并运行该镜像。有关此镜像的更多信息,请参阅 Yocto Project 网站上的 Build Appliance 页面。
-
core-image-base: 完全支持目标设备硬件的纯控制台镜像。
-
core-image-full-cmdline: 纯控制台映像,安装了功能更全面的 Linux 系统功能。
-
core-image-lsb: 符合 Linux 标准基础 (LSB) 规范的映像。该镜像需要能兼容 LSB 的发行版配置(如 poky-lsb)。如果你在构建 core-image-lsb 时没有配置该配置,那么该镜像将不符合 LSB 规范。
-
core-image-lsb-dev:适合使用主机进行开发工作的 core-image-lsb 映像。该镜像包含可在主机开发环境中使用的头文件和库。该镜像需要能兼容 LSB 的发行版配置(如 poky-lsb)。如果在构建 core-image-lsb-dev 时未配置该配置,则该映像将不符合 LSB 标准。
-
core-image-lsb-sdk: core-image-lsb 包含跨工具链中的所有内容,但也包含开发头文件和库,以形成完整的独立 SDK。该镜像需要能兼容 LSB 的发行版配置(如 poky-lsb)。如果您在构建 core-image-lsb-sdk 时未配置该配置,则该映像将不符合 LSB 标准。该镜像适合使用目标机进行开发。
-
core-image-minimal: 仅能让设备启动的小型镜像。
-
core-image-minimal-dev:适用于使用主机进行开发工作的 core-image-minimal 映像。该镜像包含可在主机开发环境中使用的头文件和库。
-
core-image-minimal-initramfs: 一个 core-image-minimal 镜像,它将基于 RAM 的最小初始根文件系统(Initramfs)作为内核的一部分,使系统能更有效地找到第一个 "init "程序。请参阅 PACKAGE_INSTALL 变量,了解使用 Initramfs 映像时有用的其他信息。
-
core-image-minimal-mtdutils: 支持最小 MTD 实用程序的 core-image-minimal 映像,用户可通过该实用程序与内核中的 MTD 子系统交互,对闪存设备执行操作。
-
core-image-rt: core-image-minimal 映像加上适合real-time使用的测试套件和工具。
-
core-image-rt-sdk: core-image-rt 映像,包括跨工具链中的所有内容。该镜像还包括开发头文件和库,形成完整的独立 SDK,适合使用目标机进行开发。
-
core-image-sato:支持 Sato 的镜像,是一种移动环境和视觉风格,可与移动设备完美配合。该镜像支持带有 Sato 主题的 X11 以及终端、编辑器、文件管理器、媒体播放器等应用程序。
-
core-image-sato-dev:适合使用主机进行开发的 core-image-sato 映像。该镜像包括在设备本身、测试和剖析工具以及调试符号上构建应用程序所需的库。该镜像的前身是 core-image-sdk。
-
core-image-sato-sdk: core-image-sato 映像包含跨工具链中的所有内容。该镜像还包括开发头文件和库,形成一个完整的独立 SDK,适合使用目标机进行开发。
-
core-image-testmaster: 用于自动运行测试的 "控制器 "镜像。它提供了一个 "已知良好 "的映像,可部署到一个单独的分区,这样就可以启动到该映像,并用它来部署第二个要测试的映像。有关运行时测试的更多信息,请参阅《Yocto 项目开发任务手册》中的 "执行自动运行时测试 "部分。
-
core-image-testmaster-initramfs: 基于 RAM 的初始根文件系统 (Initramfs) 镜像,专为 core-image-testmaster 镜像定制。
-
core-image-weston: 带有终端的基本 Wayland 镜像。该镜像提供了 Wayland 协议库和参考 Weston 合成器。更多信息,请参阅《Yocto 项目开发任务手册》中的 "使用 Wayland 和 Weston "部分。
-
core-image-x11:带有终端的基本 X11 镜像。
* build-appliance-image: An example virtual machine that contains all the pieces required to run builds using the build system as well as the build system itself. You can boot and run the image using either the VMware Player or VMware Workstation. For more information on this image, see the Build Appliance page on the Yocto Project website.
* core-image-base: A console-only image that fully supports the target device hardware.
* core-image-full-cmdline: A console-only image with more full-featured Linux system functionality installed.
* core-image-lsb: An image that conforms to the Linux Standard Base (LSB) specification. This image requires a distribution configuration that enables LSB compliance (e.g. poky-lsb). If you build core-image-lsb without that configuration, the image will not be LSB-compliant.
* core-image-lsb-dev: A core-image-lsb image that is suitable for development work using the host. The image includes headers and libraries you can use in a host development environment. This image requires a distribution configuration that enables LSB compliance (e.g. poky-lsb). If you build core-image-lsb-dev without that configuration, the image will not be LSB-compliant.
* core-image-lsb-sdk: A core-image-lsb that includes everything in the cross-toolchain but also includes development headers and libraries to form a complete standalone SDK. This image requires a distribution configuration that enables LSB compliance (e.g. poky-lsb). If you build core-image-lsb-sdk without that configuration, the image will not be LSB-compliant. This image is suitable for development using the target.
* core-image-minimal: A small image just capable of allowing a device to boot.
* core-image-minimal-dev: A core-image-minimal image suitable for development work using the host. The image includes headers and libraries you can use in a host development environment.
* core-image-minimal-initramfs: A core-image-minimal image that has the Minimal RAM-based Initial Root Filesystem (Initramfs) as part of the kernel, which allows the system to find the first “init” program more efficiently. See the PACKAGE_INSTALL variable for additional information helpful when working with Initramfs images.
* core-image-minimal-mtdutils: A core-image-minimal image that has support for the Minimal MTD Utilities, which let the user interact with the MTD subsystem in the kernel to perform operations on flash devices.
* core-image-rt: A core-image-minimal image plus a real-time test suite and tools appropriate for real-time use.
* core-image-rt-sdk: A core-image-rt image that includes everything in the cross-toolchain. The image also includes development headers and libraries to form a complete stand-alone SDK and is suitable for development using the target.
* core-image-sato: An image with Sato support, a mobile environment and visual style that works well with mobile devices. The image supports X11 with a Sato theme and applications such as a terminal, editor, file manager, media player, and so forth.
* core-image-sato-dev: A core-image-sato image suitable for development using the host. The image includes libraries needed to build applications on the device itself, testing and profiling tools, and debug symbols. This image was formerly core-image-sdk.
* core-image-sato-sdk: A core-image-sato image that includes everything in the cross-toolchain. The image also includes development headers and libraries to form a complete standalone SDK and is suitable for development using the target.
* core-image-testmaster: A “controller” image designed to be used for automated runtime testing. Provides a “known good” image that is deployed to a separate partition so that you can boot into it and use it to deploy a second image to be tested. You can find more information about runtime testing in the “Performing Automated Runtime Testing” section in the Yocto Project Development Tasks Manual.
* core-image-testmaster-initramfs: A RAM-based Initial Root Filesystem (Initramfs) image tailored for use with the core-image-testmaster image.
* core-image-weston: A very basic Wayland image with a terminal. This image provides the Wayland protocol libraries and the reference Weston compositor. For more information, see the “Using Wayland and Weston” section in the Yocto Project Development Tasks Manual.
* core-image-x11: A very basic X11 image with a terminal.
参考: