The OpenEmbedded build process supports several types of 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.
local.conf
file
before using the BitBake command to build the minimal or base image:
1. Comment out the EXTRA_IMAGE_FEATURES line 2. Set INCOMPATIBLE_LICENSE = "GPLv3"
From within the poky
Git repository, use the following command to list
the supported images:
$ ls meta*/recipes*/images/*.bb
These recipes reside in the meta/recipes-core/images
,
meta/recipes-extended/images
,
meta/recipes-graphics/images
, and
meta/recipes-sato/images
directories
within the source directory.
Although the recipe names are somewhat explanatory, here is a list that describes them:
core-image-base
:
A console-only image that fully supports the target device hardware.
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.
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-x11
:
A very basic X11 image with a terminal.
core-image-basic
:
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.
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.
core-image-lsb-sdk
:
A core-image-lsb
that includes everything in meta-toolchain
but also includes development headers and libraries to form a complete standalone SDK.
This image is suitable for development using the target.
core-image-clutter
:
An image with support for the Open GL-based toolkit Clutter, which enables development of
rich and animated graphical user interfaces.
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 meta-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-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
meta-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-gtk-directfb
:
An image that uses gtk+
over directfb
instead of X11.
In order to build, this image requires specific distro configuration that enables
gtk
over directfb
.
build-appliance-image
:
An image you can boot and run using either the
VMware Player
or VMware Workstation.
For more information on this image, see the
Build Appliance page on
the Yocto Project website.
-live
and
-directdisk
images have been replaced by a "live"
option in IMAGE_FSTYPES
that will work with any image to produce an
image file that can be
copied directly to a CD or USB device and run as is.
To build a live image, simply add
"live" to IMAGE_FSTYPES
within the local.conf
file or wherever appropriate and then build the desired image as normal.