summaryrefslogtreecommitdiffstats
path: root/documentation/yocto-project-qs
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/yocto-project-qs')
-rw-r--r--documentation/yocto-project-qs/yocto-project-qs.xml96
1 files changed, 47 insertions, 49 deletions
diff --git a/documentation/yocto-project-qs/yocto-project-qs.xml b/documentation/yocto-project-qs/yocto-project-qs.xml
index c5bb436f2f..a7f184a74f 100644
--- a/documentation/yocto-project-qs/yocto-project-qs.xml
+++ b/documentation/yocto-project-qs/yocto-project-qs.xml
@@ -3,7 +3,7 @@
3[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] > 3[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
4 4
5<article id='intro'> 5<article id='intro'>
6 <imagedata fileref="figures/yocto-project-transp.png" width="6in" depth="1in" align="right" scale="25" /> 6 <imagedata fileref="figures/yocto-project-trans.png" width="6in" depth="1in" align="right" scale="25" />
7 7
8<section id='fake-title'> 8<section id='fake-title'>
9 <title>The Yocto Project Quick Start</title> 9 <title>The Yocto Project Quick Start</title>
@@ -16,8 +16,9 @@
16 Welcome to the Yocto Project! 16 Welcome to the Yocto Project!
17 The Yocto Project is an open-source collaboration project focused on embedded Linux 17 The Yocto Project is an open-source collaboration project focused on embedded Linux
18 developers. 18 developers.
19 Amongst other things, the Yocto Project uses the Poky build system to 19 Among other things, the Yocto Project uses a build system based on the Poky project
20 construct complete Linux images. 20 to construct complete Linux images.
21 The Poky project, in turn, draws from and contributes back to the OpenEmbedded project.
21 </para> 22 </para>
22 23
23 <para> 24 <para>
@@ -42,7 +43,7 @@
42 After reading this document, you will have a basic understanding of what the Yocto Project is 43 After reading this document, you will have a basic understanding of what the Yocto Project is
43 and how to use some of its core components. 44 and how to use some of its core components.
44 This document steps you through a simple example showing you how to build a small image 45 This document steps you through a simple example showing you how to build a small image
45 and run it using the QEMU emulator. 46 and run it using the Quick EMUlator (QEMU emulator).
46 </para> 47 </para>
47 48
48 <para> 49 <para>
@@ -55,8 +56,8 @@
55 <listitem><para><emphasis>FAQs:</emphasis> Lists commonly asked Yocto Project questions and answers. 56 <listitem><para><emphasis>FAQs:</emphasis> Lists commonly asked Yocto Project questions and answers.
56 You can find two FAQs: <ulink url='&YOCTO_WIKI_URL;/wiki/FAQ'>Yocto Project FAQ</ulink> on 57 You can find two FAQs: <ulink url='&YOCTO_WIKI_URL;/wiki/FAQ'>Yocto Project FAQ</ulink> on
57 a wiki, and the 58 a wiki, and the
58 <ulink url='&YOCTO_DOCS_REF_URL;#faq'>FAQ</ulink> appendix in the 59 <ulink url='&YOCTO_DOCS_REF_URL;#faq'>FAQ</ulink> appendix in
59 The Yocto Project Reference Manual. 60 the Yocto Project Reference Manual.
60 </para></listitem> 61 </para></listitem>
61 <listitem><para><emphasis>Developer Screencast:</emphasis> The 62 <listitem><para><emphasis>Developer Screencast:</emphasis> The
62 <ulink url='http://vimeo.com/36450321'>Getting Started with the Yocto Project - New 63 <ulink url='http://vimeo.com/36450321'>Getting Started with the Yocto Project - New
@@ -66,9 +67,8 @@
66 </para> 67 </para>
67 <note> 68 <note>
68 Due to production processes, there could be differences between the Yocto Project 69 Due to production processes, there could be differences between the Yocto Project
69 documentation bundled in the release tarball and the 70 documentation bundled in a released tarball and the
70 <ulink url='&YOCTO_DOCS_QS_URL;'> 71 <ulink url='&YOCTO_DOCS_QS_URL;'>Yocto Project Quick Start</ulink> on
71 Yocto Project Quick Start</ulink> on
72 the <ulink url='&YOCTO_HOME_URL;'>Yocto Project</ulink> website. 72 the <ulink url='&YOCTO_HOME_URL;'>Yocto Project</ulink> website.
73 For the latest version of this manual, see the manual on the website. 73 For the latest version of this manual, see the manual on the website.
74 </note> 74 </note>
@@ -77,7 +77,7 @@
77<section id='yp-intro'> 77<section id='yp-intro'>
78 <title>Introducing the Yocto Project Development Environment</title> 78 <title>Introducing the Yocto Project Development Environment</title>
79 <para> 79 <para>
80 The Yocto Project through the Poky build system provides an open source development 80 The Yocto Project through the OpenEmbedded build system provides an open source development
81 environment targeting the ARM, MIPS, PowerPC and x86 architectures for a variety of 81 environment targeting the ARM, MIPS, PowerPC and x86 architectures for a variety of
82 platforms including x86-64 and emulated ones. 82 platforms including x86-64 and emulated ones.
83 You can use components from the Yocto Project to design, develop, build, debug, simulate, 83 You can use components from the Yocto Project to design, develop, build, debug, simulate,
@@ -85,9 +85,6 @@
85 application frameworks, and Qt frameworks. 85 application frameworks, and Qt frameworks.
86 </para> 86 </para>
87 87
88 <para></para>
89 <para></para>
90
91 <mediaobject> 88 <mediaobject>
92 <imageobject> 89 <imageobject>
93 <imagedata fileref="figures/yocto-environment.png" 90 <imagedata fileref="figures/yocto-environment.png"
@@ -138,7 +135,7 @@
138 restricted screen sizes, sits neatly on top of a device using the 135 restricted screen sizes, sits neatly on top of a device using the
139 GNOME Mobile Stack and provides a well-defined user experience. 136 GNOME Mobile Stack and provides a well-defined user experience.
140 Implemented in its own layer, it makes it clear to developers how they can implement 137 Implemented in its own layer, it makes it clear to developers how they can implement
141 their own user interface on top of Yocto Linux. 138 their own user interface on top of a Linux image created with the Yocto Project.
142 </para> 139 </para>
143</section> 140</section>
144 141
@@ -152,7 +149,7 @@
152 <itemizedlist> 149 <itemizedlist>
153 <listitem> 150 <listitem>
154 <para>A host system running a supported Linux distribution (i.e. recent releases of 151 <para>A host system running a supported Linux distribution (i.e. recent releases of
155 Fedora, openSUSE, CentOS, Debian, and Ubuntu). 152 Fedora, openSUSE, CentOS, and Ubuntu).
156 If the host system supports multiple cores and threads, you can configure the 153 If the host system supports multiple cores and threads, you can configure the
157 Yocto Project build system to decrease the time needed to build images 154 Yocto Project build system to decrease the time needed to build images
158 significantly. 155 significantly.
@@ -162,7 +159,7 @@
162 <para>The right packages.</para> 159 <para>The right packages.</para>
163 </listitem> 160 </listitem>
164 <listitem> 161 <listitem>
165 <para>A release of Yocto Project.</para> 162 <para>A release of the Yocto Project.</para>
166 </listitem> 163 </listitem>
167 </itemizedlist> 164 </itemizedlist>
168 165
@@ -190,7 +187,7 @@
190 </note> 187 </note>
191 </para> 188 </para>
192 <para> 189 <para>
193 The build system should be able to run on any modern distribution with Python 2.6 or 2.7. 190 The OpenEmbedded build system should be able to run on any modern distribution with Python 2.6 or 2.7.
194 Earlier releases of Python are known to not work and the system does not support Python 3 at this time. 191 Earlier releases of Python are known to not work and the system does not support Python 3 at this time.
195 This document assumes you are running one of the previously noted distributions on your Linux-based 192 This document assumes you are running one of the previously noted distributions on your Linux-based
196 host systems. 193 host systems.
@@ -232,7 +229,7 @@
232 unzip texi2html texinfo libsdl1.2-dev docbook-utils fop gawk \ 229 unzip texi2html texinfo libsdl1.2-dev docbook-utils fop gawk \
233 python-pysqlite2 diffstat make gcc build-essential xsltproc \ 230 python-pysqlite2 diffstat make gcc build-essential xsltproc \
234 g++ desktop-file-utils chrpath libgl1-mesa-dev libglu1-mesa-dev \ 231 g++ desktop-file-utils chrpath libgl1-mesa-dev libglu1-mesa-dev \
235 autoconf automake groff libtool xterm libxml-parser-perl 232 autoconf automake groff libtool xterm libxml-parser-perl dblatex
236 </literallayout> 233 </literallayout>
237 </section> 234 </section>
238 235
@@ -253,7 +250,7 @@
253 groff linuxdoc-tools patch cmake \ 250 groff linuxdoc-tools patch cmake \
254 perl-ExtUtils-MakeMaker tcl-devel gettext chrpath ncurses apr \ 251 perl-ExtUtils-MakeMaker tcl-devel gettext chrpath ncurses apr \
255 SDL-devel mesa-libGL-devel mesa-libGLU-devel gnome-doc-utils \ 252 SDL-devel mesa-libGL-devel mesa-libGLU-devel gnome-doc-utils \
256 autoconf automake libtool xterm 253 autoconf automake libtool xterm dblatex
257 </literallayout> 254 </literallayout>
258 255
259 </section> 256 </section>
@@ -269,7 +266,7 @@
269 <literallayout class='monospaced'> 266 <literallayout class='monospaced'>
270 $ sudo zypper install python gcc gcc-c++ libtool fop \ 267 $ sudo zypper install python gcc gcc-c++ libtool fop \
271 subversion git chrpath automake make wget xsltproc \ 268 subversion git chrpath automake make wget xsltproc \
272 diffstat texinfo freeglut-devel libSDL-devel 269 diffstat texinfo freeglut-devel libSDL-devel dblatex
273 </literallayout> 270 </literallayout>
274 </section> 271 </section>
275 272
@@ -291,7 +288,7 @@
291 groff linuxdoc-tools patch cmake \ 288 groff linuxdoc-tools patch cmake \
292 tcl-devel gettext ncurses apr \ 289 tcl-devel gettext ncurses apr \
293 SDL-devel mesa-libGL-devel mesa-libGLU-devel gnome-doc-utils \ 290 SDL-devel mesa-libGL-devel mesa-libGLU-devel gnome-doc-utils \
294 autoconf automake libtool xterm 291 autoconf automake libtool xterm dblatex
295 </literallayout> 292 </literallayout>
296 <note><para> 293 <note><para>
297 Depending on the CentOS version you are using, other requirements and dependencies 294 Depending on the CentOS version you are using, other requirements and dependencies
@@ -320,12 +317,13 @@
320 </para> 317 </para>
321 318
322 <para> 319 <para>
323 You can also get the Yocto Project files by setting up a Git repository on your host 320 You can also get the Yocto Project files you need by setting up (cloning in Git terms)
324 development system. 321 a local copy of the <filename>poky</filename> Git repository on your host development
325 Doing so allows you to contribute back to the project. 322 system.
323 Doing so allows you to contribute back to the Yocto Project project.
326 For information on how to get set up using this method, see the 324 For information on how to get set up using this method, see the
327 "<ulink url='&YOCTO_DOCS_DEV_URL;#local-yp-release'>Yocto 325 "<ulink url='&YOCTO_DOCS_DEV_URL;#local-yp-release'>Yocto
328 Project Release</ulink>" item in The Yocto Project Development Manual. 326 Project Release</ulink>" item in the Yocto Project Development Manual.
329 </para> 327 </para>
330 </section> 328 </section>
331</section> 329</section>
@@ -366,24 +364,22 @@
366 364
367 <para> 365 <para>
368 Use the following commands to build your image. 366 Use the following commands to build your image.
369 The build process creates an entire Linux distribution, including the toolchain, from source. 367 The OpenEmbedded build process creates an entire Linux distribution, including the toolchain,
368 from source.
370 </para> 369 </para>
371 370
372 <note><para> 371 <note><para>
373 The build process using Sato currently consumes 372 The build process using Sato currently consumes about 50GB of disk space.
374 about 50GB of disk space.
375 To allow for variations in the build process and for future package expansion, we 373 To allow for variations in the build process and for future package expansion, we
376 recommend having at least 100GB of free disk space. 374 recommend having at least 100GB of free disk space.
377 </para></note> 375 </para></note>
378 376
379 <note><para> 377 <note><para>
380 By default, the Yocto Project searches for source code using a pre-determined order 378 By default, the build process searches for source code using a pre-determined order
381 through a set of locations. 379 through a set of locations.
382 If you encounter problems with the Yocto Project finding and downloading source code, see 380 If you encounter problems with the build process finding and downloading source code, see the
383 the FAQ entry "How does the Yocto Project build system obtain source code and will it work behind my 381 "<ulink url='&YOCTO_DOCS_REF_URL;#how-does-the-yocto-project-obtain-source-code-and-will-it-work-behind-my-firewall-or-proxy-server'>How does the OpenEmbedded build system obtain source code and will it work behind my
384 firewall or proxy server?" in 382 firewall or proxy server?</ulink>" in the Yocto Project Reference Manual.
385 <ulink url='&YOCTO_DOCS_REF_URL;#faq'>
386 The Yocto Project Reference Manual</ulink>.
387 </para></note> 383 </para></note>
388 384
389 <para> 385 <para>
@@ -416,10 +412,11 @@
416 them into a directory named <filename>&YOCTO_POKY;</filename> in the current 412 them into a directory named <filename>&YOCTO_POKY;</filename> in the current
417 directory.</para></listitem> 413 directory.</para></listitem>
418 <listitem><para>The third command runs the Yocto Project environment setup script. 414 <listitem><para>The third command runs the Yocto Project environment setup script.
419 Running this script defines Yocto Project build environment settings needed to 415 Running this script defines OpenEmbedded build environment settings needed to
420 complete the build. 416 complete the build.
421 The script also creates the Yocto Project 417 The script also creates the
422 build directory, which is <filename>&YOCTO_POKY;-build</filename> in this case. 418 <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>",
419 which is <filename>&YOCTO_POKY;-build</filename> in this case.
423 After the script runs, your current working directory is set 420 After the script runs, your current working directory is set
424 to the build directory. 421 to the build directory.
425 Later, when the build completes, the build directory contains all the files 422 Later, when the build completes, the build directory contains all the files
@@ -455,12 +452,12 @@
455 <para> 452 <para>
456 Another consideration before you build is the package manager used when creating 453 Another consideration before you build is the package manager used when creating
457 the image. 454 the image.
458 By default, the Yocto Project build system uses the RPM package manager. 455 By default, the OpenEmbedded build system uses the RPM package manager.
459 You can control this configuration by using the 456 You can control this configuration by using the
460 <filename><ulink url='&YOCTO_DOCS_REF_URL;#var-PACKAGE_CLASSES'><filename>PACKAGE_CLASSES</filename></ulink></filename> variable. 457 <filename><ulink url='&YOCTO_DOCS_REF_URL;#var-PACKAGE_CLASSES'><filename>PACKAGE_CLASSES</filename></ulink></filename> variable.
461 For additional package manager selection information, see 458 For additional package manager selection information, see
462 "<ulink url='&YOCTO_DOCS_REF_URL;#ref-classes-package'>Packaging - <filename>package*.bbclass</filename></ulink>" 459 "<ulink url='&YOCTO_DOCS_REF_URL;#ref-classes-package'>Packaging - <filename>package*.bbclass</filename></ulink>"
463 in The Yocto Project Reference Manual. 460 in the Yocto Project Reference Manual.
464 </para> 461 </para>
465 462
466 <para> 463 <para>
@@ -469,14 +466,14 @@
469 For information on the <filename>-k</filename> option use the 466 For information on the <filename>-k</filename> option use the
470 <filename>bitbake --help</filename> command or see the 467 <filename>bitbake --help</filename> command or see the
471 "<ulink url='&YOCTO_DOCS_REF_URL;#usingpoky-components-bitbake'>BitBake</ulink>" section in 468 "<ulink url='&YOCTO_DOCS_REF_URL;#usingpoky-components-bitbake'>BitBake</ulink>" section in
472 The Yocto Project Reference Manual. 469 the Yocto Project Reference Manual.
473 <literallayout class='monospaced'> 470 <literallayout class='monospaced'>
474 $ bitbake -k core-image-sato 471 $ bitbake -k core-image-sato
475 </literallayout> 472 </literallayout>
476 <note><para> 473 <note><para>
477 BitBake requires Python 2.6 or 2.7. For more information on this requirement, 474 BitBake requires Python 2.6 or 2.7. For more information on this requirement,
478 see the 475 see the
479 <ulink url='&YOCTO_DOCS_REF_URL;#faq'>FAQ</ulink> in The Yocto Project Reference 476 <ulink url='&YOCTO_DOCS_REF_URL;#faq'>FAQ</ulink> in the Yocto Project Reference
480 Manual. 477 Manual.
481 </para></note> 478 </para></note>
482 The final command runs the image: 479 The final command runs the image:
@@ -515,7 +512,7 @@
515 </para> 512 </para>
516 513
517 <itemizedlist> 514 <itemizedlist>
518 <listitem><para>Install the appropriate stand-alone Yocto toolchain tarball.</para></listitem> 515 <listitem><para>Install the appropriate stand-alone toolchain tarball.</para></listitem>
519 <listitem><para>Download the pre-built image that will boot with QEMU. 516 <listitem><para>Download the pre-built image that will boot with QEMU.
520 You need to be sure to get the QEMU image that matches your target machine’s 517 You need to be sure to get the QEMU image that matches your target machine’s
521 architecture (e.g. x86, ARM, etc.).</para></listitem> 518 architecture (e.g. x86, ARM, etc.).</para></listitem>
@@ -528,13 +525,14 @@
528 <section id='installing-the-toolchain'> 525 <section id='installing-the-toolchain'>
529 <title>Installing the Toolchain</title> 526 <title>Installing the Toolchain</title>
530 <para> 527 <para>
531 You can download the pre-built toolchain, which includes the <filename>runqemu</filename> 528 You can download a tarball with the pre-built toolchain, which includes the
529 <filename>runqemu</filename>
532 script and support files, from the appropriate directory under 530 script and support files, from the appropriate directory under
533 <ulink url='&YOCTO_TOOLCHAIN_DL_URL;'></ulink>. 531 <ulink url='&YOCTO_TOOLCHAIN_DL_URL;'></ulink>.
534 Toolchains are available for 32-bit and 64-bit development systems from the 532 Toolchains are available for 32-bit and 64-bit development systems from the
535 <filename>i686</filename> and <filename>x86-64</filename> directories, respectively. 533 <filename>i686</filename> and <filename>x86-64</filename> directories, respectively.
536 Each type of development system supports five target architectures. 534 Each type of development system supports five target architectures.
537 The tarball files are named such that a string representing the host system appears 535 The names of the tarballs are such that a string representing the host system appears
538 first in the filename and then is immediately followed by a string representing 536 first in the filename and then is immediately followed by a string representing
539 the target architecture. 537 the target architecture.
540 </para> 538 </para>
@@ -578,7 +576,7 @@
578 <para> 576 <para>
579 For more information on how to install tarballs, see the 577 For more information on how to install tarballs, see the
580 "<ulink url='&YOCTO_DOCS_ADT_URL;#using-an-existing-toolchain-tarball'>Using a Cross-Toolchain Tarball</ulink>" and 578 "<ulink url='&YOCTO_DOCS_ADT_URL;#using-an-existing-toolchain-tarball'>Using a Cross-Toolchain Tarball</ulink>" and
581 "<ulink url='&YOCTO_DOCS_ADT_URL;#using-the-toolchain-from-within-the-build-tree'>Using BitBake and the Yocto Project Build Tree</ulink>" sections in The Yocto Project Application Development Toolkit (ADT) 579 "<ulink url='&YOCTO_DOCS_ADT_URL;#using-the-toolchain-from-within-the-build-tree'>Using BitBake and the Yocto Project Build Tree</ulink>" sections in the Yocto Project Application Development Toolkit (ADT)
582 User's Guide. 580 User's Guide.
583 </para> 581 </para>
584 </section> 582 </section>
@@ -610,7 +608,7 @@
610 <para> 608 <para>
611 You can learn more about downloading a Yocto Project kernel in the 609 You can learn more about downloading a Yocto Project kernel in the
612 "<ulink url='&YOCTO_DOCS_DEV_URL;#local-kernel-files'>Linux Yocto Kernel</ulink>" section of 610 "<ulink url='&YOCTO_DOCS_DEV_URL;#local-kernel-files'>Linux Yocto Kernel</ulink>" section of
613 The Yocto Project Development Manual. 611 the Yocto Project Development Manual.
614 </para> 612 </para>
615 </section> 613 </section>
616 614
@@ -733,7 +731,7 @@
733 <title>Getting the Yocto Project</title> 731 <title>Getting the Yocto Project</title>
734 732
735 <para> 733 <para>
736 Get the <ulink url='&YOCTO_DOCS_DEV_URL;#yocto-project-files'>Yocto Project Files</ulink> 734 Set up your <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>source directory</ulink>
737 one of two ways: 735 one of two ways:
738 <itemizedlist> 736 <itemizedlist>
739 <listitem><para><emphasis>Tarball:</emphasis> 737 <listitem><para><emphasis>Tarball:</emphasis>
@@ -766,9 +764,9 @@
766 <title>Initializing the Build Environment</title> 764 <title>Initializing the Build Environment</title>
767 765
768 <para> 766 <para>
769 From the parent directory of the Yocto Project Files, initialize your environment 767 From the parent directory of local source directory, initialize your environment
770 and provide a meaningful 768 and provide a meaningful
771 <ulink url='&YOCTO_DOCS_DEV_URL;#yocto-project-build-directory'>Yocto Project Build Directory</ulink> 769 <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>build directory</ulink>
772 name: 770 name:
773 <literallayout class='monospaced'> 771 <literallayout class='monospaced'>
774 $ source poky/oe-init-build-env mybuilds 772 $ source poky/oe-init-build-env mybuilds