blob: 1f96186c6e4abf016a162b9fa0f92c5204dd6242 [file] [log] [blame]
Patrick Williamsc124f4f2015-09-15 14:41:29 -05001<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
2"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
3[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
4
5<chapter id='ref-images'>
6 <title>Images</title>
7
8 <para>
9 The OpenEmbedded build system provides several example
10 images to satisfy different needs.
11 When you issue the <filename>bitbake</filename> command you provide a “top-level” recipe
12 that essentially begins the build for the type of image you want.
13 </para>
14
15 <note>
16 Building an image without GNU General Public License Version 3 (GPLv3),
17 GNU Lesser General Public License Version 3 (LGPLv3), and the
18 GNU Affero General Public License Version 3 (AGPL-3.0) components
19 is only supported for minimal and base images.
20 Furthermore, if you are going to build an image using non-GPLv3 and
21 similarly licensed components, you must make the following changes in
22 the <filename>local.conf</filename> file before using the BitBake
23 command to build the minimal or base image:
24 <literallayout class='monospaced'>
25 1. Comment out the EXTRA_IMAGE_FEATURES line
26 2. Set INCOMPATIBLE_LICENSE = "GPL-3.0 LGPL-3.0 AGPL-3.0"
27 </literallayout>
28 </note>
29
30 <para>
31 From within the <filename>poky</filename> Git repository, you can use
32 the following command to display the list of directories within the
Brad Bishopd7bf8c12018-02-25 22:55:05 -050033 <link linkend='source-directory'>Source Directory</link>
34 that contain image recipe files:
Patrick Williamsc124f4f2015-09-15 14:41:29 -050035 <literallayout class='monospaced'>
36 $ ls meta*/recipes*/images/*.bb
37 </literallayout>
38 </para>
39
40 <para>
41 Following is a list of supported recipes:
42 <itemizedlist>
Brad Bishop316dfdd2018-06-25 12:45:53 -040043 <listitem><para>
44 <filename>build-appliance-image</filename>:
45 An example virtual machine that contains all the pieces
46 required to run builds using the build system as well as the
47 build system itself.
Patrick Williamsc124f4f2015-09-15 14:41:29 -050048 You can boot and run the image using either the
49 <ulink url='http://www.vmware.com/products/player/overview.html'>VMware Player</ulink>
Brad Bishop316dfdd2018-06-25 12:45:53 -040050 or
51 <ulink url='http://www.vmware.com/products/workstation/overview.html'>VMware Workstation</ulink>.
Patrick Williamsc124f4f2015-09-15 14:41:29 -050052 For more information on this image, see the
Brad Bishop316dfdd2018-06-25 12:45:53 -040053 <ulink url='&YOCTO_HOME_URL;/software-item/build-appliance/'>Build Appliance</ulink>
54 page on the Yocto Project website.
55 </para></listitem>
Patrick Williamsc124f4f2015-09-15 14:41:29 -050056 <listitem><para><filename>core-image-base</filename>:
57 A console-only image that fully supports the target device hardware.</para></listitem>
58 <listitem><para><filename>core-image-clutter</filename>:
59 An image with support for the Open GL-based toolkit Clutter, which enables development of
60 rich and animated graphical user interfaces.</para></listitem>
Patrick Williamsc124f4f2015-09-15 14:41:29 -050061 <listitem><para><filename>core-image-full-cmdline</filename>:
62 A console-only image with more full-featured Linux system
63 functionality installed.</para></listitem>
64 <listitem><para><filename>core-image-lsb</filename>:
65 An image that conforms to the Linux Standard Base (LSB)
66 specification.
67 This image requires a distribution configuration that
68 enables LSB compliance (e.g. <filename>poky-lsb</filename>).
69 If you build <filename>core-image-lsb</filename> without that
70 configuration, the image will not be LSB-compliant.
71 </para></listitem>
72 <listitem><para><filename>core-image-lsb-dev</filename>:
73 A <filename>core-image-lsb</filename> image that is suitable for development work
74 using the host.
75 The image includes headers and libraries you can use in a host development
76 environment.
77 This image requires a distribution configuration that
78 enables LSB compliance (e.g. <filename>poky-lsb</filename>).
79 If you build <filename>core-image-lsb-dev</filename> without that
80 configuration, the image will not be LSB-compliant.
81 </para></listitem>
82 <listitem><para><filename>core-image-lsb-sdk</filename>:
83 A <filename>core-image-lsb</filename> that includes everything in
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050084 the cross-toolchain but also includes development headers and libraries
Patrick Williamsc124f4f2015-09-15 14:41:29 -050085 to form a complete standalone SDK.
86 This image requires a distribution configuration that
87 enables LSB compliance (e.g. <filename>poky-lsb</filename>).
88 If you build <filename>core-image-lsb-sdk</filename> without that
89 configuration, the image will not be LSB-compliant.
90 This image is suitable for development using the target.</para></listitem>
91 <listitem><para><filename>core-image-minimal</filename>:
92 A small image just capable of allowing a device to boot.</para></listitem>
93 <listitem><para><filename>core-image-minimal-dev</filename>:
94 A <filename>core-image-minimal</filename> image suitable for development work
95 using the host.
96 The image includes headers and libraries you can use in a host development
97 environment.
98 </para></listitem>
99 <listitem><para id='images-core-image-minimal-initramfs'><filename>core-image-minimal-initramfs</filename>:
100 A <filename>core-image-minimal</filename> image that has the Minimal RAM-based
101 Initial Root Filesystem (initramfs) as part of the kernel,
102 which allows the system to find the first “init” program more efficiently.
103 See the
104 <link linkend='var-PACKAGE_INSTALL'><filename>PACKAGE_INSTALL</filename></link>
105 variable for additional information helpful when working with
106 initramfs images.
107 </para></listitem>
108 <listitem><para><filename>core-image-minimal-mtdutils</filename>:
109 A <filename>core-image-minimal</filename> image that has support
110 for the Minimal MTD Utilities, which let the user interact with the
111 MTD subsystem in the kernel to perform operations on flash devices.
112 </para></listitem>
113 <listitem><para><filename>core-image-rt</filename>:
114 A <filename>core-image-minimal</filename> image plus a real-time test suite and
115 tools appropriate for real-time use.</para></listitem>
116 <listitem><para><filename>core-image-rt-sdk</filename>:
117 A <filename>core-image-rt</filename> image that includes everything in
Patrick Williamsd8c66bc2016-06-20 12:57:21 -0500118 the cross-toolchain.
Patrick Williamsc124f4f2015-09-15 14:41:29 -0500119 The image also includes development headers and libraries to form a complete
120 stand-alone SDK and is suitable for development using the target.
121 </para></listitem>
122 <listitem><para><filename>core-image-sato</filename>:
123 An image with Sato support, a mobile environment and visual style that works well
124 with mobile devices.
125 The image supports X11 with a Sato theme and applications such as
126 a terminal, editor, file manager, media player, and so forth.
127 </para></listitem>
128 <listitem><para><filename>core-image-sato-dev</filename>:
129 A <filename>core-image-sato</filename> image suitable for development
130 using the host.
131 The image includes libraries needed to build applications on the device itself,
132 testing and profiling tools, and debug symbols.
133 This image was formerly <filename>core-image-sdk</filename>.
134 </para></listitem>
135 <listitem><para><filename>core-image-sato-sdk</filename>:
Patrick Williamsd8c66bc2016-06-20 12:57:21 -0500136 A <filename>core-image-sato</filename> image that includes everything in
137 the cross-toolchain.
Patrick Williamsc124f4f2015-09-15 14:41:29 -0500138 The image also includes development headers and libraries to form a complete standalone SDK
139 and is suitable for development using the target.</para></listitem>
140 <listitem><para><filename>core-image-testmaster</filename>:
141 A "master" image designed to be used for automated runtime testing.
142 Provides a "known good" image that is deployed to a separate
143 partition so that you can boot into it and use it to deploy a
144 second image to be tested.
145 You can find more information about runtime testing in the
146 "<ulink url='&YOCTO_DOCS_DEV_URL;#performing-automated-runtime-testing'>Performing Automated Runtime Testing</ulink>"
Brad Bishopd7bf8c12018-02-25 22:55:05 -0500147 section in the Yocto Project Development Tasks Manual.
Patrick Williamsc124f4f2015-09-15 14:41:29 -0500148 </para></listitem>
149 <listitem><para><filename>core-image-testmaster-initramfs</filename>:
150 A RAM-based Initial Root Filesystem (initramfs) image tailored for
151 use with the <filename>core-image-testmaster</filename> image.
152 </para></listitem>
153 <listitem><para><filename>core-image-weston</filename>:
154 A very basic Wayland image with a terminal.
155 This image provides the Wayland protocol libraries and the
156 reference Weston compositor.
157 For more information, see the
Brad Bishop316dfdd2018-06-25 12:45:53 -0400158 "<ulink url='&YOCTO_DOCS_DEV_URL;#dev-using-wayland-and-weston'>Using Wayland and Weston</ulink>"
159 section in the Yocto Project Development Tasks Manual.
Patrick Williamsc124f4f2015-09-15 14:41:29 -0500160 </para></listitem>
161 <listitem><para><filename>core-image-x11</filename>:
162 A very basic X11 image with a terminal.
163 </para></listitem>
Patrick Williamsc124f4f2015-09-15 14:41:29 -0500164 </itemizedlist>
165 </para>
166</chapter>
167<!--
168vim: expandtab tw=80 ts=4
169-->