blob: 7d3c719981065b67593503aa9e587d5ff72a3008 [file] [log] [blame]
Brad Bishop316dfdd2018-06-25 12:45:53 -04001<!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-manual-system-requirements'>
6<title>System Requirements</title>
7
8 <para>
9 Welcome to the Yocto Project Reference Manual!
10 This manual provides reference information for the current release
Andrew Geissler82c905d2020-04-13 13:39:40 -050011 of the Yocto Project, and
12 is most effectively used after you have an understanding
Brad Bishop316dfdd2018-06-25 12:45:53 -040013 of the basics of the Yocto Project.
14 The manual is neither meant to be read as a starting point to the
Andrew Geissler82c905d2020-04-13 13:39:40 -050015 Yocto Project, nor read from start to finish.
16 Rather, use this manual to find variable definitions, class
Brad Bishop316dfdd2018-06-25 12:45:53 -040017 descriptions, and so forth as needed during the course of using
18 the Yocto Project.
19 </para>
20
21 <para>
22 For introductory information on the Yocto Project, see the
23 <ulink url='&YOCTO_HOME_URL;'>Yocto Project Website</ulink> and the
24 "<ulink url='&YOCTO_DOCS_OM_URL;#overview-development-environment'>Yocto Project Development Environment</ulink>"
25 chapter in the Yocto Project Overview and Concepts Manual.
26 </para>
27
28 <para>
29 If you want to use the Yocto Project to quickly build an image
30 without having to understand concepts, work through the
31 <ulink url='&YOCTO_DOCS_BRIEF_URL;'>Yocto Project Quick Build</ulink>
32 document.
33 You can find "how-to" information in the
34 <ulink url='&YOCTO_DOCS_DEV_URL;'>Yocto Project Development Tasks Manual</ulink>.
35 You can find Yocto Project overview and conceptual information in the
36 <ulink url='&YOCTO_DOCS_OM_URL;'>Yocto Project Overview and Concepts Manual</ulink>.
37 <note><title>Tip</title>
38 For more information about the Yocto Project Documentation set,
39 see the
40 "<link linkend='resources-links-and-related-documentation'>Links and Related Documentation</link>"
41 section.
42 </note>
43 </para>
44
45 <section id='detailed-supported-distros'>
46 <title>Supported Linux Distributions</title>
47
48 <para>
49 Currently, the Yocto Project is supported on the following
50 distributions:
51 <note><title>Notes</title>
52 <itemizedlist>
53 <listitem><para>
54 Yocto Project releases are tested against the stable
55 Linux distributions in the following list.
56 The Yocto Project should work on other distributions but
57 validation is not performed against them.
58 </para></listitem>
59 <listitem><para>
60 In particular, the Yocto Project does not support
61 and currently has no plans to support
62 rolling-releases or development distributions due to
63 their constantly changing nature.
64 We welcome patches and bug reports, but keep in mind
65 that our priority is on the supported platforms listed
66 below.
67 </para></listitem>
68 <listitem><para>
Andrew Geissler82c905d2020-04-13 13:39:40 -050069 You may use Windows Subsystem For Linux v2 to set up a build
70 host using Windows 10, but validation is not performed
71 against build hosts using WSLv2.
72 <note>
73 The Yocto Project is not compatible with WSLv1, it is
74 compatible but not officially supported nor validated
75 with WSLv2, if you still decide to use WSL please upgrade
76 to WSLv2.
77 </note>
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080078 </para></listitem>
79 <listitem><para>
Brad Bishop316dfdd2018-06-25 12:45:53 -040080 If you encounter problems, please go to
81 <ulink url='&YOCTO_BUGZILLA_URL;'>Yocto Project Bugzilla</ulink>
82 and submit a bug.
83 We are interested in hearing about your experience.
84 For information on how to submit a bug, see the
85 Yocto Project
86 <ulink url='&YOCTO_WIKI_URL;/wiki/Bugzilla_Configuration_and_Bug_Tracking'>Bugzilla wiki page</ulink>
87 and the
88 "<ulink url='&YOCTO_DOCS_DEV_URL;#submitting-a-defect-against-the-yocto-project'>Submitting a Defect Against the Yocto Project</ulink>"
89 section in the Yocto Project Development Tasks Manual.
90 </para></listitem>
91 </itemizedlist>
92 </note>
93 <itemizedlist>
Brad Bishopb1114e52019-02-13 07:56:10 -050094 <listitem><para>Ubuntu 16.04 (LTS)</para></listitem>
Brad Bishopf3f93bb2019-10-16 14:33:32 -040095 <listitem><para>Ubuntu 18.04 (LTS)</para></listitem>
96 <listitem><para>Ubuntu 19.04</para></listitem>
Brad Bishopb1114e52019-02-13 07:56:10 -050097 <listitem><para>Fedora 28</para></listitem>
Brad Bishopc342db32019-05-15 21:57:59 -040098 <listitem><para>Fedora 29</para></listitem>
Brad Bishopf3f93bb2019-10-16 14:33:32 -040099 <listitem><para>Fedora 30</para></listitem>
Brad Bishopb1114e52019-02-13 07:56:10 -0500100 <listitem><para>CentOS 7.x</para></listitem>
101 <listitem><para>Debian GNU/Linux 8.x (Jessie)</para></listitem>
102 <listitem><para>Debian GNU/Linux 9.x (Stretch)</para></listitem>
Brad Bishop79641f22019-09-10 07:20:22 -0400103 <listitem><para>Debian GNU/Linux 10.x (Buster)</para></listitem>
Brad Bishopf3f93bb2019-10-16 14:33:32 -0400104 <listitem><para>OpenSUSE Leap 15.1</para></listitem>
Brad Bishopb1114e52019-02-13 07:56:10 -0500105 </itemizedlist>
106 </para>
Brad Bishopb1114e52019-02-13 07:56:10 -0500107
Brad Bishop316dfdd2018-06-25 12:45:53 -0400108 <note>
109 While the Yocto Project Team attempts to ensure all Yocto Project
110 releases are one hundred percent compatible with each officially
111 supported Linux distribution, instances might exist where you
112 encounter a problem while using the Yocto Project on a specific
113 distribution.
114 </note>
115 </section>
116
Brad Bishop1a4b7ee2018-12-16 17:11:34 -0800117 <section id='required-packages-for-the-build-host'>
118 <title>Required Packages for the Build Host</title>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400119
120 <para>
121 The list of packages you need on the host development system can
122 be large when covering all build scenarios using the Yocto Project.
Andrew Geissler82c905d2020-04-13 13:39:40 -0500123 This section describes required packages according to
Brad Bishop316dfdd2018-06-25 12:45:53 -0400124 Linux distribution and function.
125 </para>
126
127 <section id='ubuntu-packages'>
128 <title>Ubuntu and Debian</title>
129
130 <para>
131 The following list shows the required packages by function
132 given a supported Ubuntu or Debian Linux distribution:
Andrew Geissler82c905d2020-04-13 13:39:40 -0500133 <note><title>Notes</title>
134 <itemizedlist>
135 <listitem><para>
136 If your build system has the
137 <filename>oss4-dev</filename> package installed, you
138 might experience QEMU build failures due to the package
139 installing its own custom
140 <filename>/usr/include/linux/soundcard.h</filename> on
141 the Debian system.
142 If you run into this situation, either of the following
143 solutions exist:
144 <literallayout class='monospaced'>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400145 $ sudo apt-get build-dep qemu
146 $ sudo apt-get remove oss4-dev
Andrew Geissler82c905d2020-04-13 13:39:40 -0500147 </literallayout>
148 </para></listitem>
149 <listitem><para>
150 For Debian-8, <filename>python3-git</filename> and <filename>pylint3</filename> are no longer available via <filename>apt-get</filename>.
151 <literallayout class='monospaced'>
152 $ sudo pip3 install GitPython pylint==1.9.5
153 </literallayout>
154 </para></listitem>
155 </itemizedlist>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400156 </note>
157 <itemizedlist>
158 <listitem><para><emphasis>Essentials:</emphasis>
159 Packages needed to build an image on a headless
160 system:
161 <literallayout class='monospaced'>
162 $ sudo apt-get install &UBUNTU_HOST_PACKAGES_ESSENTIAL;
163 </literallayout></para></listitem>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400164 <listitem><para><emphasis>Documentation:</emphasis>
165 Packages needed if you are going to build out the
166 Yocto Project documentation manuals:
167 <literallayout class='monospaced'>
168 $ sudo apt-get install make xsltproc docbook-utils fop dblatex xmlto
169 </literallayout></para></listitem>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400170 </itemizedlist>
171 </para>
172 </section>
173
174 <section id='fedora-packages'>
175 <title>Fedora Packages</title>
176
177 <para>
178 The following list shows the required packages by function
179 given a supported Fedora Linux distribution:
180 <itemizedlist>
181 <listitem><para><emphasis>Essentials:</emphasis>
182 Packages needed to build an image for a headless
183 system:
184 <literallayout class='monospaced'>
185 $ sudo dnf install &FEDORA_HOST_PACKAGES_ESSENTIAL;
186 </literallayout></para></listitem>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400187 <listitem><para><emphasis>Documentation:</emphasis>
188 Packages needed if you are going to build out the
189 Yocto Project documentation manuals:
190 <literallayout class='monospaced'>
Brad Bishop19323692019-04-05 15:28:33 -0400191 $ sudo dnf install docbook-style-dsssl docbook-style-xsl \
Brad Bishop316dfdd2018-06-25 12:45:53 -0400192 docbook-dtds docbook-utils fop libxslt dblatex xmlto
193 </literallayout></para></listitem>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400194 </itemizedlist>
195 </para>
196 </section>
197
198 <section id='opensuse-packages'>
199 <title>openSUSE Packages</title>
200
201 <para>
202 The following list shows the required packages by function
203 given a supported openSUSE Linux distribution:
204 <itemizedlist>
205 <listitem><para><emphasis>Essentials:</emphasis>
206 Packages needed to build an image for a headless
207 system:
208 <literallayout class='monospaced'>
209 $ sudo zypper install &OPENSUSE_HOST_PACKAGES_ESSENTIAL;
210 </literallayout></para></listitem>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400211 <listitem><para><emphasis>Documentation:</emphasis>
212 Packages needed if you are going to build out the
213 Yocto Project documentation manuals:
214 <literallayout class='monospaced'>
Brad Bishop19323692019-04-05 15:28:33 -0400215 $ sudo zypper install dblatex xmlto
Brad Bishop316dfdd2018-06-25 12:45:53 -0400216 </literallayout></para></listitem>
217 </itemizedlist>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400218 </para>
219 </section>
220
Andrew Geissler82c905d2020-04-13 13:39:40 -0500221 <section id='centos-7-packages'>
222 <title>CentOS-7 Packages</title>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400223
224 <para>
225 The following list shows the required packages by function
Andrew Geissler82c905d2020-04-13 13:39:40 -0500226 given a supported CentOS-7 Linux distribution:
Brad Bishop316dfdd2018-06-25 12:45:53 -0400227 <itemizedlist>
228 <listitem><para><emphasis>Essentials:</emphasis>
229 Packages needed to build an image for a headless
230 system:
231 <literallayout class='monospaced'>
Andrew Geissler82c905d2020-04-13 13:39:40 -0500232 $ sudo yum install &CENTOS7_HOST_PACKAGES_ESSENTIAL;
Brad Bishop316dfdd2018-06-25 12:45:53 -0400233 </literallayout>
234 <note><title>Notes</title>
235 <itemizedlist>
236 <listitem><para>
237 Extra Packages for Enterprise Linux
238 (i.e. <filename>epel-release</filename>)
239 is a collection of packages from Fedora
240 built on RHEL/CentOS for easy installation
241 of packages not included in enterprise
242 Linux by default.
243 You need to install these packages
244 separately.
Andrew Geissler82c905d2020-04-13 13:39:40 -0500245 </para></listitem>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400246 <listitem><para>
247 The <filename>makecache</filename> command
248 consumes additional Metadata from
249 <filename>epel-release</filename>.
Andrew Geissler82c905d2020-04-13 13:39:40 -0500250 </para></listitem>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400251 </itemizedlist>
252 </note>
Andrew Geissler82c905d2020-04-13 13:39:40 -0500253 </para></listitem>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400254 <listitem><para><emphasis>Documentation:</emphasis>
255 Packages needed if you are going to build out the
256 Yocto Project documentation manuals:
257 <literallayout class='monospaced'>
Brad Bishop19323692019-04-05 15:28:33 -0400258 $ sudo yum install docbook-style-dsssl docbook-style-xsl \
Brad Bishop316dfdd2018-06-25 12:45:53 -0400259 docbook-dtds docbook-utils fop libxslt dblatex xmlto
Andrew Geissler82c905d2020-04-13 13:39:40 -0500260 </literallayout>
261 </para></listitem>
262 </itemizedlist>
263 </para>
264 </section>
265
266 <section id='centos-8-packages'>
267 <title>CentOS-8 Packages</title>
268
269 <para>
270 The following list shows the required packages by function
271 given a supported CentOS-8 Linux distribution:
272 <itemizedlist>
273 <listitem><para><emphasis>Essentials:</emphasis>
274 Packages needed to build an image for a headless
275 system:
276 <literallayout class='monospaced'>
277 $ sudo dnf install &CENTOS8_HOST_PACKAGES_ESSENTIAL;
278 </literallayout>
279 <note><title>Notes</title>
280 <itemizedlist>
281 <listitem><para>
282 Extra Packages for Enterprise Linux
283 (i.e. <filename>epel-release</filename>)
284 is a collection of packages from Fedora
285 built on RHEL/CentOS for easy installation
286 of packages not included in enterprise
287 Linux by default.
288 You need to install these packages
289 separately.
290 </para></listitem>
291 <listitem><para>
292 The <filename>PowerTools</filename> repo
293 provides additional packages such as
294 <filename>rpcgen</filename> and
295 <filename>texinfo</filename>.
296 </para></listitem>
297 <listitem><para>
298 The <filename>makecache</filename> command
299 consumes additional Metadata from
300 <filename>epel-release</filename>.
301 </para></listitem>
302 </itemizedlist>
303 </note>
304 </para></listitem>
305 <listitem><para><emphasis>Documentation:</emphasis>
306 Packages needed if you are going to build out the
307 Yocto Project documentation manuals:
308 <literallayout class='monospaced'>
309 $ sudo dnf install docbook-style-dsssl docbook-style-xsl \
310 docbook-dtds docbook-utils fop libxslt dblatex xmlto
311 </literallayout>
312 </para></listitem>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400313 </itemizedlist>
314 </para>
315 </section>
316 </section>
317
Andrew Geissler82c905d2020-04-13 13:39:40 -0500318 <section id='required-git-tar-python-and-gcc-versions'>
319 <title>Required Git, tar, Python and gcc Versions</title>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400320
321 <para>
322 In order to use the build system, your host development system
323 must meet the following version requirements for Git, tar, and
324 Python:
325 <itemizedlist>
326 <listitem><para>Git 1.8.3.1 or greater</para></listitem>
Andrew Geissler82c905d2020-04-13 13:39:40 -0500327 <listitem><para>tar 1.28 or greater</para></listitem>
328 <listitem><para>Python 3.5.0 or greater</para></listitem>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400329 </itemizedlist>
330 </para>
331
332 <para>
333 If your host development system does not meet all these requirements,
334 you can resolve this by installing a <filename>buildtools</filename>
335 tarball that contains these tools.
336 You can get the tarball one of two ways: download a pre-built
337 tarball or use BitBake to build the tarball.
338 </para>
339
Andrew Geissler82c905d2020-04-13 13:39:40 -0500340 <para>
341 In addition, your host development system must meet the following
342 version requirement for gcc:
343 <itemizedlist>
344 <listitem><para>gcc 5.0 or greater</para></listitem>
345 </itemizedlist>
346 </para>
347
348 <para>
349 If your host development system does not meet this requirement,
350 you can resolve this by installing a <filename>buildtools-extended</filename>
351 tarball that contains additional tools, the equivalent of <filename>buildtools-essential</filename>.
352 </para>
353 <section id='installing-a-pre-built-buildtools-tarball-with-install-buildtools-script'>
354 <title>Installing a Pre-Built <filename>buildtools</filename> Tarball with <filename>install-buildtools</filename> script</title>
355
356 <para>
357 The <filename>install-buildtools</filename> script is the easiest
358 of the three methods by which you can get these tools. It downloads
359 a pre-built buildtools installer and automatically installs the tools
360 for you:
361 <orderedlist>
362 <listitem><para>
363 Execute the <filename>install-buildtools</filename> script.
364 Here is an example:
365 <literallayout class='monospaced'>
366 $ cd poky
367 $ scripts/install-buildtools --without-extended-buildtools \
368 --base-url &YOCTO_DL_URL;/releases/yocto \
369 --release yocto-&DISTRO; \
370 --installer-version &DISTRO;
371 </literallayout>
372 <para>
373 During execution, the buildtools tarball will be downloaded,
374 the checksum of the download will be verified, the installer
375 will be run for you, and some basic checks will be run to
376 to make sure the installation is functional.
377 </para>
378 <para>
379 To avoid the need of <filename>sudo</filename> privileges,
380 the <filename>install-buildtools</filename> script will
381 by default tell the installer to install in:
382 <literallayout class='monospaced'>
383 <replaceable>/path/to/</replaceable>poky/buildtools
384 </literallayout>
385 </para>
386 <para>
387 If your host development system needs the additional tools
388 provided in the <filename>buildtools-extended</filename>
389 tarball, you can instead execute the
390 <filename>install-buildtools</filename> script with the
391 default parameters:
392 <literallayout class='monospaced'>
393 $ cd poky
394 $ scripts/install-buildtools
395 </literallayout>
396 </para>
397 </para></listitem>
398 <listitem><para>
399 Source the tools environment setup script by using a
400 command like the following:
401 <literallayout class='monospaced'>
402 $ source <replaceable>/path/to/</replaceable>poky/buildtools/environment-setup-x86_64-pokysdk-linux
403 </literallayout>
404 Of course, you need to supply your installation directory and be
405 sure to use the right file (i.e. i586 or x86_64).
406 </para>
407 <para>
408 After you have sourced the setup script,
409 the tools are added to <filename>PATH</filename>
410 and any other environment variables required to run the
411 tools are initialized.
412 The results are working versions versions of Git, tar,
413 Python and <filename>chrpath</filename>. And in the case of
414 the <filename>buildtools-extended</filename> tarball, additional
415 working versions of tools including <filename>gcc</filename>,
416 <filename>make</filename> and the other tools included in
417 <filename>packagegroup-core-buildessential</filename>.
418 </para></listitem>
419 </orderedlist>
420 </para>
421 </section>
422
Brad Bishop316dfdd2018-06-25 12:45:53 -0400423 <section id='downloading-a-pre-built-buildtools-tarball'>
424 <title>Downloading a Pre-Built <filename>buildtools</filename> Tarball</title>
425
426 <para>
427 Downloading and running a pre-built buildtools installer is
428 the easiest of the two methods by which you can get these tools:
429 <orderedlist>
430 <listitem><para>
431 Locate and download the <filename>*.sh</filename> at
Andrew Geissler82c905d2020-04-13 13:39:40 -0500432 <ulink url='&YOCTO_RELEASE_DL_URL;/buildtools/'></ulink>.
Brad Bishop316dfdd2018-06-25 12:45:53 -0400433 </para></listitem>
434 <listitem><para>
435 Execute the installation script.
Andrew Geissler82c905d2020-04-13 13:39:40 -0500436 Here is an example for the traditional installer:
Brad Bishop316dfdd2018-06-25 12:45:53 -0400437 <literallayout class='monospaced'>
438 $ sh ~/Downloads/x86_64-buildtools-nativesdk-standalone-&DISTRO;.sh
439 </literallayout>
Andrew Geissler82c905d2020-04-13 13:39:40 -0500440 Here is an example for the extended installer:
441 <literallayout class='monospaced'>
442 $ sh ~/Downloads/x86_64-buildtools-extended-nativesdk-standalone-&DISTRO;.sh
443 </literallayout>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400444 During execution, a prompt appears that allows you to
445 choose the installation directory.
446 For example, you could choose the following:
447 <literallayout class='monospaced'>
448 /home/<replaceable>your-username</replaceable>/buildtools
449 </literallayout>
450 </para></listitem>
451 <listitem><para>
452 Source the tools environment setup script by using a
453 command like the following:
454 <literallayout class='monospaced'>
455 $ source /home/<replaceable>your_username</replaceable>/buildtools/environment-setup-i586-poky-linux
456 </literallayout>
457 Of course, you need to supply your installation directory and be
458 sure to use the right file (i.e. i585 or x86-64).
459 </para>
460 <para>
461 After you have sourced the setup script,
462 the tools are added to <filename>PATH</filename>
463 and any other environment variables required to run the
464 tools are initialized.
465 The results are working versions versions of Git, tar,
Andrew Geissler82c905d2020-04-13 13:39:40 -0500466 Python and <filename>chrpath</filename>. And in the case of
467 the <filename>buildtools-extended</filename> tarball, additional
468 working versions of tools including <filename>gcc</filename>,
469 <filename>make</filename> and the other tools included in
470 <filename>packagegroup-core-buildessential</filename>.
Brad Bishop316dfdd2018-06-25 12:45:53 -0400471 </para></listitem>
472 </orderedlist>
473 </para>
474 </section>
475
476 <section id='building-your-own-buildtools-tarball'>
477 <title>Building Your Own <filename>buildtools</filename> Tarball</title>
478
479 <para>
480 Building and running your own buildtools installer applies
481 only when you have a build host that can already run BitBake.
482 In this case, you use that machine to build the
483 <filename>.sh</filename> file and then
484 take steps to transfer and run it on a
485 machine that does not meet the minimal Git, tar, and Python
Andrew Geissler82c905d2020-04-13 13:39:40 -0500486 (or gcc) requirements.
Brad Bishop316dfdd2018-06-25 12:45:53 -0400487 </para>
488
489 <para>
490 Here are the steps to take to build and run your own
491 buildtools installer:
492 <orderedlist>
493 <listitem><para>
494 On the machine that is able to run BitBake,
495 be sure you have set up your build environment with
496 the setup script
497 (<link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link>).
498 </para></listitem>
499 <listitem><para>
500 Run the BitBake command to build the tarball:
501 <literallayout class='monospaced'>
502 $ bitbake buildtools-tarball
503 </literallayout>
Andrew Geissler82c905d2020-04-13 13:39:40 -0500504 or run the BitBake command to build the extended tarball:
505 <literallayout class='monospaced'>
506 $ bitbake buildtools-extended-tarball
507 </literallayout>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400508 <note>
509 The
510 <link linkend='var-SDKMACHINE'><filename>SDKMACHINE</filename></link>
511 variable in your <filename>local.conf</filename> file
512 determines whether you build tools for a 32-bit
513 or 64-bit system.
514 </note>
515 Once the build completes, you can find the
516 <filename>.sh</filename> file that installs
517 the tools in the <filename>tmp/deploy/sdk</filename>
518 subdirectory of the
519 <link linkend='build-directory'>Build Directory</link>.
520 The installer file has the string "buildtools"
Andrew Geissler82c905d2020-04-13 13:39:40 -0500521 (or "buildtools-extended") in the name.
Brad Bishop316dfdd2018-06-25 12:45:53 -0400522 </para></listitem>
523 <listitem><para>
524 Transfer the <filename>.sh</filename> file from the
525 build host to the machine that does not meet the
Andrew Geissler82c905d2020-04-13 13:39:40 -0500526 Git, tar, or Python (or gcc) requirements.
Brad Bishop316dfdd2018-06-25 12:45:53 -0400527 </para></listitem>
528 <listitem><para>
529 On the machine that does not meet the requirements,
530 run the <filename>.sh</filename> file
531 to install the tools.
Andrew Geissler82c905d2020-04-13 13:39:40 -0500532 Here is an example for the traditional installer:
Brad Bishop316dfdd2018-06-25 12:45:53 -0400533 <literallayout class='monospaced'>
534 $ sh ~/Downloads/x86_64-buildtools-nativesdk-standalone-&DISTRO;.sh
535 </literallayout>
Andrew Geissler82c905d2020-04-13 13:39:40 -0500536 Here is an example for the extended installer:
537 <literallayout class='monospaced'>
538 $ sh ~/Downloads/x86_64-buildtools-extended-nativesdk-standalone-&DISTRO;.sh
539 </literallayout>
Brad Bishop316dfdd2018-06-25 12:45:53 -0400540 During execution, a prompt appears that allows you to
541 choose the installation directory.
542 For example, you could choose the following:
543 <literallayout class='monospaced'>
544 /home/<replaceable>your_username</replaceable>/buildtools
545 </literallayout>
546 </para></listitem>
547 <listitem><para>
548 Source the tools environment setup script by using a
549 command like the following:
550 <literallayout class='monospaced'>
Andrew Geissler82c905d2020-04-13 13:39:40 -0500551 $ source /home/<replaceable>your_username</replaceable>/buildtools/environment-setup-x86_64-poky-linux
Brad Bishop316dfdd2018-06-25 12:45:53 -0400552 </literallayout>
553 Of course, you need to supply your installation directory and be
Andrew Geissler82c905d2020-04-13 13:39:40 -0500554 sure to use the right file (i.e. i586 or x86_64).
Brad Bishop316dfdd2018-06-25 12:45:53 -0400555 </para>
556 <para>
557 After you have sourced the setup script,
558 the tools are added to <filename>PATH</filename>
559 and any other environment variables required to run the
560 tools are initialized.
561 The results are working versions versions of Git, tar,
Andrew Geissler82c905d2020-04-13 13:39:40 -0500562 Python and <filename>chrpath</filename>. And in the case of
563 the <filename>buildtools-extended</filename> tarball, additional
564 working versions of tools including <filename>gcc</filename>,
565 <filename>make</filename> and the other tools included in
566 <filename>packagegroup-core-buildessential</filename>.
Brad Bishop316dfdd2018-06-25 12:45:53 -0400567 </para></listitem>
568 </orderedlist>
569 </para>
570 </section>
571 </section>
572</chapter>
573<!--
574vim: expandtab tw=80 ts=4
575-->