summaryrefslogtreecommitdiffstats
path: root/documentation/ref-manual
diff options
context:
space:
mode:
authorScott Rifenbark <srifenbark@gmail.com>2018-01-15 11:30:54 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-02-14 15:25:29 +0000
commit32651058c0ae2263a0684fcefe1a82504a9ac366 (patch)
tree6b7ce84a7698a560c7e37e5d7b215188066af746 /documentation/ref-manual
parenta59c06833cff0ae020b796ce81aee84e45a31e64 (diff)
downloadpoky-32651058c0ae2263a0684fcefe1a82504a9ac366.tar.gz
dev-manual, ref-manual: Moved building image to dev-manual
Fixes [YOCTO #12370] The section in the ref-manual that overviewed the buld process was redundant and more of a "how-to" topic. I have moved and merged it into the dev-manual into a similar area. (From yocto-docs rev: 44f1351334342629aaa0976f62e64ac4f67166aa) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/ref-manual')
-rwxr-xr-xdocumentation/ref-manual/figures/building-an-image.pngbin14891 -> 0 bytes
-rw-r--r--documentation/ref-manual/usingpoky.xml141
2 files changed, 0 insertions, 141 deletions
diff --git a/documentation/ref-manual/figures/building-an-image.png b/documentation/ref-manual/figures/building-an-image.png
deleted file mode 100755
index 1fbea5ab00..0000000000
--- a/documentation/ref-manual/figures/building-an-image.png
+++ /dev/null
Binary files differ
diff --git a/documentation/ref-manual/usingpoky.xml b/documentation/ref-manual/usingpoky.xml
index 73b5df88dd..bfca60a99b 100644
--- a/documentation/ref-manual/usingpoky.xml
+++ b/documentation/ref-manual/usingpoky.xml
@@ -11,147 +11,6 @@
11 documentation set provide more details on how to use the Yocto Project. 11 documentation set provide more details on how to use the Yocto Project.
12 </para> 12 </para>
13 13
14<section id='usingpoky-build'>
15 <title>Running a Build</title>
16
17 <para>
18 This section provides a summary of the build process and provides information
19 for less obvious aspects of the build process.
20 For general information on how to build an image using the OpenEmbedded build
21 system, see the
22 "<ulink url='&YOCTO_DOCS_QS_URL;#qs-building-images'>Building Images</ulink>"
23 section of the Yocto Project Quick Start.
24 </para>
25
26 <section id='build-overview'>
27 <title>Build Overview</title>
28
29 <para>
30 In the development environment you will need to build an image whenever you change hardware
31 support, add or change system libraries, or add or change services that have dependencies.
32 </para>
33
34 <mediaobject>
35 <imageobject>
36 <imagedata fileref="figures/building-an-image.png" format="PNG" align='center' scalefit='1'/>
37 </imageobject>
38 <caption>
39 <para>Building an Image</para>
40 </caption>
41 </mediaobject>
42
43 <para>
44 The first thing you need to do is set up the OpenEmbedded build
45 environment by sourcing the environment setup script
46 (i.e.
47 <link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link>).
48 Here is an example:
49 <literallayout class='monospaced'>
50 $ source &OE_INIT_FILE; [<replaceable>build_dir</replaceable>]
51 </literallayout>
52 </para>
53
54 <para>
55 The <replaceable>build_dir</replaceable> argument is optional and specifies the directory the
56 OpenEmbedded build system uses for the build -
57 the
58 <link linkend='build-directory'>Build Directory</link>.
59 If you do not specify a Build Directory, it defaults to a directory
60 named <filename>build</filename> in your current working directory.
61 A common practice is to use a different Build Directory for different targets.
62 For example, <filename>~/build/x86</filename> for a <filename>qemux86</filename>
63 target, and <filename>~/build/arm</filename> for a <filename>qemuarm</filename> target.
64 </para>
65
66 <para>
67 Once the build environment is set up, you can build a target using:
68 <literallayout class='monospaced'>
69 $ bitbake <replaceable>target</replaceable>
70 </literallayout>
71 <note>
72 <para>
73 If you experience a build error due to resources
74 temporarily being unavailable and it appears you
75 should not be having this issue, it might be due
76 to the combination of a 4.3+ Linux kernel and
77 <filename>systemd</filename> version 228+
78 (i.e. see this
79 <ulink url='http://unix.stackexchange.com/questions/253903/creating-threads-fails-with-resource-temporarily-unavailable-with-4-3-kernel'>link</ulink>
80 for information).
81 </para>
82
83 <para>
84 To work around this issue, you can try either
85 of the following:
86 <itemizedlist>
87 <listitem><para>
88 Try the build again.
89 </para></listitem>
90 <listitem><para>
91 Modify the "DefaultTasksMax"
92 <filename>systemd</filename> parameter
93 by uncommenting it and setting it to
94 "infinity".
95 You can find this parameter in the
96 <filename>system.conf</filename> file
97 located in
98 <filename>/etc/systemd</filename>
99 on most systems.
100 </para></listitem>
101 </itemizedlist>
102 </para>
103 </note>
104 </para>
105
106 <para>
107 The <replaceable>target</replaceable> is the name of the recipe you want to build.
108 Common targets are the images in <filename>meta/recipes-core/images</filename>,
109 <filename>meta/recipes-sato/images</filename>, etc. all found in the
110 <link linkend='source-directory'>Source Directory</link>.
111 Or, the target can be the name of a recipe for a specific piece of software such as
112 BusyBox.
113 For more details about the images the OpenEmbedded build system supports, see the
114 "<link linkend="ref-images">Images</link>" chapter.
115 </para>
116
117 <note>
118 Building an image without GNU General Public License Version
119 3 (GPLv3), or similarly licensed, components is supported for
120 only minimal and base images.
121 See the "<link linkend='ref-images'>Images</link>" chapter for more information.
122 </note>
123 </section>
124
125 <section id='building-an-image-using-gpl-components'>
126 <title>Building an Image Using GPL Components</title>
127
128 <para>
129 When building an image using GPL components, you need to maintain your original
130 settings and not switch back and forth applying different versions of the GNU
131 General Public License.
132 If you rebuild using different versions of GPL, dependency errors might occur
133 due to some components not being rebuilt.
134 </para>
135 </section>
136</section>
137
138<section id='usingpoky-install'>
139 <title>Installing and Using the Result</title>
140
141 <para>
142 Once an image has been built, it often needs to be installed.
143 The images and kernels built by the OpenEmbedded build system are placed in the
144 <link linkend='build-directory'>Build Directory</link> in
145 <filename class="directory">tmp/deploy/images</filename>.
146 For information on how to run pre-built images such as <filename>qemux86</filename>
147 and <filename>qemuarm</filename>, see the
148 <ulink url='&YOCTO_DOCS_SDK_URL;'>Yocto Project Application Development and the Extensible Software Development Kit (eSDK)</ulink>
149 manual.
150 For information about how to install these images, see the documentation for your
151 particular board or machine.
152 </para>
153</section>
154
155<section id='usingpoky-debugging-tools-and-techniques'> 14<section id='usingpoky-debugging-tools-and-techniques'>
156 <title>Debugging Tools and Techniques</title> 15 <title>Debugging Tools and Techniques</title>
157 16