blob: d15ca5b93aac39060bde315c166188a32ca1c945 [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
33 <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>
34 that containe image recipe files:
35 <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>
57 <listitem><para><filename>core-image-directfb</filename>:
58 An image that uses <filename>directfb</filename> instead of X11.
59 </para></listitem>
60 <listitem><para><filename>core-image-full-cmdline</filename>:
61 A console-only image with more full-featured Linux system
62 functionality installed.</para></listitem>
63 <listitem><para><filename>core-image-lsb</filename>:
64 An image that conforms to the Linux Standard Base (LSB)
65 specification.
66 This image requires a distribution configuration that
67 enables LSB compliance (e.g. <filename>poky-lsb</filename>).
68 If you build <filename>core-image-lsb</filename> without that
69 configuration, the image will not be LSB-compliant.
70 </para></listitem>
71 <listitem><para><filename>core-image-lsb-dev</filename>:
72 A <filename>core-image-lsb</filename> image that is suitable for development work
73 using the host.
74 The image includes headers and libraries you can use in a host development
75 environment.
76 This image requires a distribution configuration that
77 enables LSB compliance (e.g. <filename>poky-lsb</filename>).
78 If you build <filename>core-image-lsb-dev</filename> without that
79 configuration, the image will not be LSB-compliant.
80 </para></listitem>
81 <listitem><para><filename>core-image-lsb-sdk</filename>:
82 A <filename>core-image-lsb</filename> that includes everything in
83 meta-toolchain but also includes development headers and libraries
84 to form a complete standalone SDK.
85 This image requires a distribution configuration that
86 enables LSB compliance (e.g. <filename>poky-lsb</filename>).
87 If you build <filename>core-image-lsb-sdk</filename> without that
88 configuration, the image will not be LSB-compliant.
89 This image is suitable for development using the target.</para></listitem>
90 <listitem><para><filename>core-image-minimal</filename>:
91 A small image just capable of allowing a device to boot.</para></listitem>
92 <listitem><para><filename>core-image-minimal-dev</filename>:
93 A <filename>core-image-minimal</filename> image suitable for development work
94 using the host.
95 The image includes headers and libraries you can use in a host development
96 environment.
97 </para></listitem>
98 <listitem><para id='images-core-image-minimal-initramfs'><filename>core-image-minimal-initramfs</filename>:
99 A <filename>core-image-minimal</filename> image that has the Minimal RAM-based
100 Initial Root Filesystem (initramfs) as part of the kernel,
101 which allows the system to find the first “init” program more efficiently.
102 See the
103 <link linkend='var-PACKAGE_INSTALL'><filename>PACKAGE_INSTALL</filename></link>
104 variable for additional information helpful when working with
105 initramfs images.
106 </para></listitem>
107 <listitem><para><filename>core-image-minimal-mtdutils</filename>:
108 A <filename>core-image-minimal</filename> image that has support
109 for the Minimal MTD Utilities, which let the user interact with the
110 MTD subsystem in the kernel to perform operations on flash devices.
111 </para></listitem>
112 <listitem><para><filename>core-image-rt</filename>:
113 A <filename>core-image-minimal</filename> image plus a real-time test suite and
114 tools appropriate for real-time use.</para></listitem>
115 <listitem><para><filename>core-image-rt-sdk</filename>:
116 A <filename>core-image-rt</filename> image that includes everything in
117 <filename>meta-toolchain</filename>.
118 The image also includes development headers and libraries to form a complete
119 stand-alone SDK and is suitable for development using the target.
120 </para></listitem>
121 <listitem><para><filename>core-image-sato</filename>:
122 An image with Sato support, a mobile environment and visual style that works well
123 with mobile devices.
124 The image supports X11 with a Sato theme and applications such as
125 a terminal, editor, file manager, media player, and so forth.
126 </para></listitem>
127 <listitem><para><filename>core-image-sato-dev</filename>:
128 A <filename>core-image-sato</filename> image suitable for development
129 using the host.
130 The image includes libraries needed to build applications on the device itself,
131 testing and profiling tools, and debug symbols.
132 This image was formerly <filename>core-image-sdk</filename>.
133 </para></listitem>
134 <listitem><para><filename>core-image-sato-sdk</filename>:
135 A <filename>core-image-sato</filename> image that includes everything in meta-toolchain.
136 The image also includes development headers and libraries to form a complete standalone SDK
137 and is suitable for development using the target.</para></listitem>
138 <listitem><para><filename>core-image-testmaster</filename>:
139 A "master" image designed to be used for automated runtime testing.
140 Provides a "known good" image that is deployed to a separate
141 partition so that you can boot into it and use it to deploy a
142 second image to be tested.
143 You can find more information about runtime testing in the
144 "<ulink url='&YOCTO_DOCS_DEV_URL;#performing-automated-runtime-testing'>Performing Automated Runtime Testing</ulink>"
145 section in the Yocto Project Development Manual.
146 </para></listitem>
147 <listitem><para><filename>core-image-testmaster-initramfs</filename>:
148 A RAM-based Initial Root Filesystem (initramfs) image tailored for
149 use with the <filename>core-image-testmaster</filename> image.
150 </para></listitem>
151 <listitem><para><filename>core-image-weston</filename>:
152 A very basic Wayland image with a terminal.
153 This image provides the Wayland protocol libraries and the
154 reference Weston compositor.
155 For more information, see the
156 "<link linkend='wayland'>Wayland</link>" section.
157 </para></listitem>
158 <listitem><para><filename>core-image-x11</filename>:
159 A very basic X11 image with a terminal.
160 </para></listitem>
161 <listitem><para><filename>qt4e-demo-image</filename>:
162 An image that launches into the demo application for the embedded
163 (not based on X11) version of Qt.</para></listitem>
164 </itemizedlist>
165 </para>
166</chapter>
167<!--
168vim: expandtab tw=80 ts=4
169-->