blob: c752f94c3d1135df698facf29a3ef8b91d0ef8d1 [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>
43 <listitem><para><filename>build-appliance-image</filename>:
44 An example virtual machine that contains all the pieces required to
45 run builds using the build system as well as the build system itself.
46 You can boot and run the image using either the
47 <ulink url='http://www.vmware.com/products/player/overview.html'>VMware Player</ulink>
48 or <ulink url='http://www.vmware.com/products/workstation/overview.html'>VMware Workstation</ulink>.
49 For more information on this image, see the
50 <ulink url='&YOCTO_HOME_URL;/documentation/build-appliance'>Build Appliance</ulink> page on
51 the Yocto Project website.</para></listitem>
52 <listitem><para><filename>core-image-base</filename>:
53 A console-only image that fully supports the target device hardware.</para></listitem>
54 <listitem><para><filename>core-image-clutter</filename>:
55 An image with support for the Open GL-based toolkit Clutter, which enables development of
56 rich and animated graphical user interfaces.</para></listitem>
Patrick Williamsc124f4f2015-09-15 14:41:29 -050057 <listitem><para><filename>core-image-full-cmdline</filename>:
58 A console-only image with more full-featured Linux system
59 functionality installed.</para></listitem>
60 <listitem><para><filename>core-image-lsb</filename>:
61 An image that conforms to the Linux Standard Base (LSB)
62 specification.
63 This image requires a distribution configuration that
64 enables LSB compliance (e.g. <filename>poky-lsb</filename>).
65 If you build <filename>core-image-lsb</filename> without that
66 configuration, the image will not be LSB-compliant.
67 </para></listitem>
68 <listitem><para><filename>core-image-lsb-dev</filename>:
69 A <filename>core-image-lsb</filename> image that is suitable for development work
70 using the host.
71 The image includes headers and libraries you can use in a host development
72 environment.
73 This image requires a distribution configuration that
74 enables LSB compliance (e.g. <filename>poky-lsb</filename>).
75 If you build <filename>core-image-lsb-dev</filename> without that
76 configuration, the image will not be LSB-compliant.
77 </para></listitem>
78 <listitem><para><filename>core-image-lsb-sdk</filename>:
79 A <filename>core-image-lsb</filename> that includes everything in
Patrick Williamsd8c66bc2016-06-20 12:57:21 -050080 the cross-toolchain but also includes development headers and libraries
Patrick Williamsc124f4f2015-09-15 14:41:29 -050081 to form a complete standalone SDK.
82 This image requires a distribution configuration that
83 enables LSB compliance (e.g. <filename>poky-lsb</filename>).
84 If you build <filename>core-image-lsb-sdk</filename> without that
85 configuration, the image will not be LSB-compliant.
86 This image is suitable for development using the target.</para></listitem>
87 <listitem><para><filename>core-image-minimal</filename>:
88 A small image just capable of allowing a device to boot.</para></listitem>
89 <listitem><para><filename>core-image-minimal-dev</filename>:
90 A <filename>core-image-minimal</filename> image suitable for development work
91 using the host.
92 The image includes headers and libraries you can use in a host development
93 environment.
94 </para></listitem>
95 <listitem><para id='images-core-image-minimal-initramfs'><filename>core-image-minimal-initramfs</filename>:
96 A <filename>core-image-minimal</filename> image that has the Minimal RAM-based
97 Initial Root Filesystem (initramfs) as part of the kernel,
98 which allows the system to find the first “init” program more efficiently.
99 See the
100 <link linkend='var-PACKAGE_INSTALL'><filename>PACKAGE_INSTALL</filename></link>
101 variable for additional information helpful when working with
102 initramfs images.
103 </para></listitem>
104 <listitem><para><filename>core-image-minimal-mtdutils</filename>:
105 A <filename>core-image-minimal</filename> image that has support
106 for the Minimal MTD Utilities, which let the user interact with the
107 MTD subsystem in the kernel to perform operations on flash devices.
108 </para></listitem>
109 <listitem><para><filename>core-image-rt</filename>:
110 A <filename>core-image-minimal</filename> image plus a real-time test suite and
111 tools appropriate for real-time use.</para></listitem>
112 <listitem><para><filename>core-image-rt-sdk</filename>:
113 A <filename>core-image-rt</filename> image that includes everything in
Patrick Williamsd8c66bc2016-06-20 12:57:21 -0500114 the cross-toolchain.
Patrick Williamsc124f4f2015-09-15 14:41:29 -0500115 The image also includes development headers and libraries to form a complete
116 stand-alone SDK and is suitable for development using the target.
117 </para></listitem>
118 <listitem><para><filename>core-image-sato</filename>:
119 An image with Sato support, a mobile environment and visual style that works well
120 with mobile devices.
121 The image supports X11 with a Sato theme and applications such as
122 a terminal, editor, file manager, media player, and so forth.
123 </para></listitem>
124 <listitem><para><filename>core-image-sato-dev</filename>:
125 A <filename>core-image-sato</filename> image suitable for development
126 using the host.
127 The image includes libraries needed to build applications on the device itself,
128 testing and profiling tools, and debug symbols.
129 This image was formerly <filename>core-image-sdk</filename>.
130 </para></listitem>
131 <listitem><para><filename>core-image-sato-sdk</filename>:
Patrick Williamsd8c66bc2016-06-20 12:57:21 -0500132 A <filename>core-image-sato</filename> image that includes everything in
133 the cross-toolchain.
Patrick Williamsc124f4f2015-09-15 14:41:29 -0500134 The image also includes development headers and libraries to form a complete standalone SDK
135 and is suitable for development using the target.</para></listitem>
136 <listitem><para><filename>core-image-testmaster</filename>:
137 A "master" image designed to be used for automated runtime testing.
138 Provides a "known good" image that is deployed to a separate
139 partition so that you can boot into it and use it to deploy a
140 second image to be tested.
141 You can find more information about runtime testing in the
142 "<ulink url='&YOCTO_DOCS_DEV_URL;#performing-automated-runtime-testing'>Performing Automated Runtime Testing</ulink>"
Brad Bishopd7bf8c12018-02-25 22:55:05 -0500143 section in the Yocto Project Development Tasks Manual.
Patrick Williamsc124f4f2015-09-15 14:41:29 -0500144 </para></listitem>
145 <listitem><para><filename>core-image-testmaster-initramfs</filename>:
146 A RAM-based Initial Root Filesystem (initramfs) image tailored for
147 use with the <filename>core-image-testmaster</filename> image.
148 </para></listitem>
149 <listitem><para><filename>core-image-weston</filename>:
150 A very basic Wayland image with a terminal.
151 This image provides the Wayland protocol libraries and the
152 reference Weston compositor.
153 For more information, see the
154 "<link linkend='wayland'>Wayland</link>" section.
155 </para></listitem>
156 <listitem><para><filename>core-image-x11</filename>:
157 A very basic X11 image with a terminal.
158 </para></listitem>
Patrick Williamsc124f4f2015-09-15 14:41:29 -0500159 </itemizedlist>
160 </para>
161</chapter>
162<!--
163vim: expandtab tw=80 ts=4
164-->