summaryrefslogtreecommitdiffstats
path: root/documentation/poky-ref-manual/ref-images.xml
blob: 646e441c1749fa31189d601f2f4ae645a6ec6183 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
<!DOCTYPE appendix PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">

<appendix id='ref-images'>
    <title>Reference: Images</title>

    <para>
        The Yocto Project build process supports several types of images to satisfy different needs.  
        When you issue the <filename>bitbake</filename> command you provide a “top-level” recipe 
        that essentially begins the build for the type of image you want.
    </para>

    <note>
        Building an image without GNU Public License Version 3 (GPLv3) components is 
        only supported for minimal and base images.
        Furthermore, if you are going to build an image using non-GPLv3 components,
        you must make the following changes in the <filename>local.conf</filename> file
        before using the BitBake command to build the minimal or base image:
        <literallayout class='monospaced'>
     1. Comment out the EXTRA_IMAGE_FEATURES line
     2. Set INCOMPATIBLE_LICENSE = "GPLv3"
        </literallayout>
    </note>

    <para>
        From within the <filename>poky</filename> Git repository use the following command to list 
        the supported images:
        <literallayout class='monospaced'>
     $ ls meta*/recipes*/images/*.bb
        </literallayout>
        These recipes reside in the <filename>meta/recipes-core/images</filename>,
        <filename>meta/recipes-extended/images</filename>, 
        <filename>meta/recipes-graphics/images</filename>, and 
        <filename>meta/recipes-sato/images</filename> directories of your local Yocto Project 
        file structure (Git repository or extracted release tarball).  
        Although the recipe names are somewhat explanatory, here is a list that describes them:
    </para>

    <itemizedlist>
            <listitem>
                <para>
                    <emphasis><filename>core-image-base</filename></emphasis> - A console-only image that fully 
                    supports the target device hardware. 
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-core</filename></emphasis> - An X11 image with simple 
                    applications such as terminal, editor, and file manager.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-minimal</filename></emphasis> - A small image just capable 
                    of allowing a device to boot.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-minimal-dev</filename></emphasis> – A 
                    <filename>core-image-minimal</filename> image suitable for 
                    development work.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-minimal-directdisk</filename></emphasis> – A 
                    <filename>core-image-minimal</filename>  image that you can 
                    copy directly to the disk of the target device.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-minimal-initramfs</filename></emphasis> – 
                    A <filename>core-image-minimal</filename> image that has the Minimal RAM-based 
                    Initial Root Filesystem (<filename>initramfs</filename>) as part of the kernel, 
                    which allows the system to find the first “init” program more efficiently.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-minimal-live</filename></emphasis> – A 
                    <filename>core-image-minimal</filename> image you can run from a 
                    USB device or CD as is.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-minimal-mtdutils</filename></emphasis> – A 
                    <filename>core-image-minimal</filename> 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.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-basic</filename></emphasis> – A foundational 
                    basic image without support 
                    for X that can be reasonably used for customization.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-lsb</filename></emphasis> - A
                    <filename>core-image-basic</filename> image suitable for implementations 
                    that conform to Linux Standard Base (LSB).
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-lsb-dev</filename></emphasis> - A
                    <filename>core-image-lsb</filename> image that is suitable for development work.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-lsb-live</filename></emphasis> - A
                    <filename>core-image-lsb</filename> image that you run from a USB device or CD as is.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-lsb-sdk</filename></emphasis> - A
                    <filename>core-image-lsb</filename> that includes everything in meta-toolchain 
                    but also includes development 
                    headers and libraries to form a complete standalone SDK. 
                    See the <link linkend='platdev-appdev-external-sdk'> 
                    External Development Using the Poky SDK</link> section for more information.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-lsb-sdk-live</filename></emphasis> - A 
                    <filename>core-image-lsb-sdk</filename> image with the ability to run the image
                    from a USB device or CD as is.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-clutter</filename></emphasis> - An image with 
                    support for 
                    the Open GL-based toolkit Clutter, which enables development of rich and animated
                    graphical user interaces.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-sato</filename></emphasis> - 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 Pimlico applications and also  
                    contains terminal, editor, and file manager.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-sato-dev</filename></emphasis> - A
                    <filename>core-image-sato</filename> image suitable for development
                    that also includes a native toolchain and libraries needed to build applications on 
                    the device itself. 
                    The image also includes testing and profiling tools as well as debug symbols.  
                    This image was formerly <filename>core-image-sdk</filename>.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-sato-directdisk</filename></emphasis> - A
                    <filename>core-image-sato</filename> image that can be copied directly to the 
                    disk of the target device.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-sato-live</filename></emphasis> - A
                    <filename>core-image-sato</filename> image with the ability to run 
                    from a USB device or CD as is.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-sato-sdk</filename></emphasis> - A
                    <filename>core-image-sato</filename> image that includes everything in meta-toolchain. 
                    The image also includes development headers and libraries to form a complete standalone SDK. 
                    See the <link linkend='platdev-appdev-external-sdk'> 
                    External Development Using the Poky SDK</link> section for more information..
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-sato-sdk-directdisk</filename></emphasis> - A
                    <filename>core-image-sato-sdk</filename> image that can be copied directly to the 
                    disk of the target device.
                </para>
            </listitem>
            <listitem>
                <para>
                    <emphasis><filename>core-image-sato-sdk-live</filename></emphasis> - A
                    <filename>core-image-sato-sdk</filename> image that you can run  
                    from a USB device or CD as is.
                </para>
            </listitem>
    </itemizedlist>
</appendix>
<!-- 
vim: expandtab tw=80 ts=4 
-->