diff options
author | Scott Rifenbark <scott.m.rifenbark@intel.com> | 2011-08-18 09:38:15 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-08-23 18:47:02 -0700 |
commit | e384051ded9e846050473df8a043cba656dcdf67 (patch) | |
tree | d86f3e78ee53498c80df494351f56eac097cc23a /documentation | |
parent | 7f9b16defbd72e0b082ea428ae379d430bf997bb (diff) | |
download | poky-e384051ded9e846050473df8a043cba656dcdf67.tar.gz |
documentation/poky-ref-manual/introduction.xml: re-write for YP
I re-wrote and reorganzied this chapter to reflect the book as
a Yocto Project Reference Guide.
(From yocto-docs rev: ef3c3955ab0cedb57d9ae48041ed94806fe34001)
Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation')
-rw-r--r-- | documentation/poky-ref-manual/introduction.xml | 246 |
1 files changed, 107 insertions, 139 deletions
diff --git a/documentation/poky-ref-manual/introduction.xml b/documentation/poky-ref-manual/introduction.xml index 7314b04d78..e9d639a511 100644 --- a/documentation/poky-ref-manual/introduction.xml +++ b/documentation/poky-ref-manual/introduction.xml | |||
@@ -5,166 +5,134 @@ | |||
5 | <title>Introduction</title> | 5 | <title>Introduction</title> |
6 | 6 | ||
7 | <section id='intro-welcome'> | 7 | <section id='intro-welcome'> |
8 | <title>Welcome to Poky!</title> | 8 | <title>Introduction</title> |
9 | 9 | ||
10 | <para> | 10 | <para> |
11 | Poky is the build tool in the Yocto Project. | 11 | This manual provides reference information for the current release of the Yocto Project. |
12 | The Yocto Project uses Poky to build images (kernel, system, and application software) for | 12 | The Yocto Project is an open-source collaboration project focused on embedded Linux |
13 | targeted hardware. | 13 | developers. |
14 | </para> | 14 | Amongst other things, the Yocto Project uses the Poky build tool to |
15 | 15 | construct complete Linux images. | |
16 | <para> | 16 | You can find complete introductory and getting started information on the Yocto Project |
17 | Before diving into Poky, it helps to have an understanding of the Yocto Project. | 17 | by reading the |
18 | Especially useful for newcomers is the information in the Yocto Project Quick Start, which | 18 | <ulink url='http://www.yoctoproject.org/docs/1.1/yocto-project-qs/yocto-project-qs.html'> |
19 | you can find on the <ulink url="http://www.yoctoproject.org">Yocto Project website</ulink>. | 19 | Yocto Project Quick Start</ulink>. |
20 | Specifically, the guide is | 20 | You can also find lots of information on the Yocto Project on the |
21 | at <ulink url="http://www.yoctoproject.org/docs/yocto-quick-start/yocto-project-qs.html"/>. | 21 | <ulink url="http://www.yoctoproject.org">Yocto Project website</ulink>. |
22 | </para> | 22 | </para> |
23 | </section> | 23 | </section> |
24 | 24 | ||
25 | <section id='what-is-poky'> | 25 | <section id='intro-manualoverview'> |
26 | <title>What is Poky?</title> | 26 | <title>Documentation Overview</title> |
27 | |||
28 | <para> | ||
29 | Within the Yocto Project, Poky provides an open source, full-platform build tool based on | ||
30 | Linux, X11, Matchbox, GTK+, Pimlico, Clutter, | ||
31 | and other <ulink url='http://gnome.org/mobile'>GNOME Mobile</ulink> technologies. | ||
32 | It provides a focused and stable subset of OpenEmbedded upon which you can easily and | ||
33 | reliably build and develop. | ||
34 | Poky fully supports a wide range of x86, ARM, MIPS and PowerPC hardware and device virtualization. | ||
35 | </para> | ||
36 | |||
37 | <para> | ||
38 | Poky is primarily a platform builder that generates filesystem images | ||
39 | based on open source software such as the Kdrive X server, the Matchbox | ||
40 | window manager, the GTK+ toolkit and the D-Bus message bus system. While images | ||
41 | for many kinds of devices can be generated, the standard example | ||
42 | machines target QEMU full-system emulation (x86, ARM, MIPS and PowerPC) and | ||
43 | real reference boards for each of these architectures. | ||
44 | Poky's ability to boot inside a QEMU | ||
45 | emulator makes it particularly suitable as a test platform for developing embedded software. | ||
46 | </para> | ||
47 | |||
48 | <para> | 27 | <para> |
49 | An important component integrated within Poky is Sato, a GNOME Mobile-based | 28 | This reference manual consists of the following: |
50 | user interface environment. | 29 | <itemizedlist> |
51 | It is designed to work well with screens that use very high DPI and have restricted | 30 | <listitem><para><emphasis> |
52 | sizes, such as those often found on smartphones and PDAs. | 31 | <link linkend='usingpoky'>Using the Yocto Project</link>:</emphasis> This chapter |
53 | Because Sato is coded for speed and efficiency, it works smoothly on hand-held and | 32 | provides an overview of the components that make up the Yocto Project |
54 | other embedded hardware. | 33 | followed by information about debugging images created in the Yocto Project. |
55 | It sits nicely on top of any device that uses the GNOME Mobile stack and it results in | 34 | </para></listitem> |
56 | a well-defined user experience. | 35 | <listitem><para><emphasis> |
36 | <link linkend='extendpoky'>Extending the Yocto Project</link>:</emphasis> This chapter | ||
37 | provides information about how to extend and customize the Yocto Project | ||
38 | along with advice on how to manage these changes.</para></listitem> | ||
39 | <listitem><para><emphasis> | ||
40 | <link linkend='bsp'>Board Support Packages (BSP) - Developer's Guide</link>:</emphasis> | ||
41 | This chapter describes the example filesystem layout for BSP development and | ||
42 | the click-through licensing scheme.</para></listitem> | ||
43 | <listitem><para><emphasis> | ||
44 | <link linkend='platdev'>Platform Development With the Yocto Project</link>:</emphasis> | ||
45 | This chapter describes application development, debugging, and profiling using | ||
46 | the Yocto Project.</para></listitem> | ||
47 | <listitem><para><emphasis> | ||
48 | <link linkend='ref-structure'>Reference: Directory Structure</link>:</emphasis> | ||
49 | This appendix describes the directory structure of the Yocto Project files. | ||
50 | The Yocto Project files represent the file structure or Git repository created | ||
51 | as a result of setting up the Yocto Project on your host development system. | ||
52 | </para></listitem> | ||
53 | <listitem><para><emphasis> | ||
54 | <link linkend='ref-bitbake'>Reference: BitBake</link>:</emphasis> | ||
55 | This appendix provides an overview of the BitBake tool and its role within | ||
56 | the Yocto Project.</para></listitem> | ||
57 | <listitem><para><emphasis> | ||
58 | <link linkend='ref-classes'>Reference: Classes</link>:</emphasis> | ||
59 | This appendix describes the classes used in the Yocto Project.</para></listitem> | ||
60 | <listitem><para><emphasis> | ||
61 | <link linkend='ref-images'>Reference: Images</link>:</emphasis> | ||
62 | This appendix describes the standard images that the Yocto Project supports. | ||
63 | </para></listitem> | ||
64 | <listitem><para><emphasis> | ||
65 | <link linkend='ref-features'>Reference: Features</link>:</emphasis> | ||
66 | This appendix describes mechanisms for creating distribution, machine, and image | ||
67 | features during the build process using the Yocto Project.</para></listitem> | ||
68 | <listitem><para><emphasis> | ||
69 | <link linkend='ref-variables-glos'>Reference: Variables Glossary</link>:</emphasis> | ||
70 | This appendix presents most Yocto Project variables. | ||
71 | Entries describe the function of the variable and how to apply them. | ||
72 | </para></listitem> | ||
73 | <listitem><para><emphasis> | ||
74 | <link linkend='ref-varlocality'>Reference: Variable Locality | ||
75 | (Distro, Machine, Recipe, etc.)</link>:</emphasis> | ||
76 | This appendix provides variable locality or context.</para></listitem> | ||
77 | <listitem><para><emphasis> | ||
78 | <link linkend='faq'>Reference: FAQ</link>:</emphasis> | ||
79 | This appendix provides answers for commonly asked questions in the Yocto Project | ||
80 | development environment.</para></listitem> | ||
81 | <listitem><para><emphasis> | ||
82 | <link linkend='resources'>Reference: Contributing to the Yocto Project</link>:</emphasis> | ||
83 | This appendix provides guidance on how you can contribute back to the Yocto | ||
84 | Project.</para></listitem> | ||
85 | </itemizedlist> | ||
57 | </para> | 86 | </para> |
87 | </section> | ||
58 | 88 | ||
59 | <screenshot> | ||
60 | <mediaobject> | ||
61 | <imageobject> | ||
62 | <imagedata fileref="figures/ss-sato.png" format="PNG" align='center' scalefit='1' width="100%" contentdepth="100%"/> | ||
63 | </imageobject> | ||
64 | <caption> | ||
65 | <para>The Sato Desktop - A screenshot from a machine running a Poky built image</para> | ||
66 | </caption> | ||
67 | </mediaobject> | ||
68 | </screenshot> | ||
69 | 89 | ||
90 | <section id='intro-requirements'> | ||
91 | <title>System Requirements</title> | ||
70 | <para> | 92 | <para> |
71 | Poky has a growing open source community and is also backed up by commercial organizations | 93 | For system Yocto Project system requirements, see the |
72 | including Intel® Corporation. | 94 | <ulink url='http://www.yoctoproject.org/docs/1.1/yocto-project-qs/yocto-project-qs.html#resources'> |
95 | What You Need and How You Get It</ulink> section in the | ||
96 | <ulink url='http://www.yoctoproject.org/docs/1.1/yocto-project-qs/yocto-project-qs.html'> | ||
97 | Yocto Project Quick Start</ulink>. | ||
73 | </para> | 98 | </para> |
74 | </section> | 99 | </section> |
75 | 100 | ||
76 | <section id='intro-manualoverview'> | 101 | <section id='intro-getit'> |
77 | <title>Documentation Overview</title> | 102 | <title>Obtaining the Yocto Project</title> |
78 | <para> | ||
79 | The sections in this reference manual describe different aspects of Poky. | ||
80 | The <link linkend='usingpoky'>'Using Poky'</link> section provides an overview of the components | ||
81 | that make up Poky followed by information about using Poky and debugging images created in | ||
82 | the Yocto Project. | ||
83 | The <link linkend='extendpoky'>'Extending Poky'</link> and | ||
84 | <link linkend='bsp'>'Board Support Packages'</link> sections provide information | ||
85 | about how to extend and customize Poky along with advice on how to manage these changes. | ||
86 | The <link linkend='platdev'>'Platform Development with Poky'</link> section provides information about | ||
87 | interaction between Poky and target hardware for common platform development tasks such as software | ||
88 | development, debugging and profiling. | ||
89 | The rest of the manual consists of several reference sections, each providing details on a specific | ||
90 | area of Poky functionality. | ||
91 | </para> | ||
92 | |||
93 | <para> | 103 | <para> |
94 | This manual applies to Poky Release 5.0 (Bernard). | 104 | The Yocto Project development team makes the Yocto Project available through a number |
105 | of methods: | ||
106 | <itemizedlist> | ||
107 | <listitem><para><emphasis>Releases:</emphasis> Stable, tested releases are available through | ||
108 | <ulink url='http://yoctoproject.org/downloads/poky/'/>.</para></listitem> | ||
109 | <listitem><para><emphasis>Nightly Builds:</emphasis> These releases are available at | ||
110 | <ulink url='http://autobuilder.yoctoproject.org/'/>. | ||
111 | These builds include Yocto Project releases, meta-toolchain tarballs, and | ||
112 | experimental builds.</para></listitem> | ||
113 | <listitem><para><emphasis>Yocto Project Website:</emphasis> You can find releases | ||
114 | of the Yocto Project and supported BSPs at the | ||
115 | <ulink url='http://www.yoctoproject.org'>Yocto Project website</ulink>. | ||
116 | Along with these downloads, you can find lots of other information at this site. | ||
117 | </para></listitem> | ||
118 | </itemizedlist> | ||
95 | </para> | 119 | </para> |
96 | </section> | 120 | </section> |
97 | 121 | ||
98 | 122 | <section id='intro-getit-dev'> | |
99 | <section id='intro-requirements'> | 123 | <title>Development Checkouts</title> |
100 | <title>System Requirements</title> | ||
101 | <para> | 124 | <para> |
102 | Although we recommend Debian-based distributions | 125 | Development using the Yocto Project requires a local copy of the Yocto Project files. |
103 | (Ubuntu 10.04 or newer) as the host system for Poky, nothing in Poky is | 126 | You can get these files by downloading a Yocto Project release tarball and unpacking it, |
104 | distribution-specific. Consequently, other distributions should work as long | 127 | or by establishing a Git repository of the files. |
105 | as the appropriate prerequisites are installed. For example, we know of Poky being used | 128 | For information on both these methods, see |
106 | successfully on Redhat, SUSE, Gentoo and Slackware host systems. | 129 | <ulink url='http://www.yoctoproject.org/docs/1.1/dev-manual/dev-manual.html#getting-setup'> |
107 | For information on what you need to develop images using Yocto Project and Poky, | 130 | Getting Setup</ulink> section in |
108 | you should see the Yocto Project Quick Start on the <ulink url="http://www.yoctoproject.org"> | 131 | <ulink url='http://www.yoctoproject.org/docs/1.1/dev-manual/dev-manual.html'> |
109 | Yocto Project website</ulink>. | 132 | The Yocto Project Development Manual</ulink>. |
110 | The direct link to the quick start is | ||
111 | <ulink url='http://yoctoproject.org/docs/yocto-quick-start/yocto-project-qs.html'/>. | ||
112 | </para> | 133 | </para> |
113 | </section> | 134 | </section> |
114 | 135 | ||
115 | <section id='intro-getit'> | ||
116 | <title>Obtaining Poky</title> | ||
117 | |||
118 | <section id='intro-getit-releases'> | ||
119 | <title>Releases</title> | ||
120 | |||
121 | <para>Periodically, we make releases of Poky available | ||
122 | at <ulink url='http://yoctoproject.org/downloads/poky/'/>. | ||
123 | These releases are more stable and more rigorously tested than the nightly development images. | ||
124 | </para> | ||
125 | </section> | ||
126 | |||
127 | <section id='intro-getit-nightly'> | ||
128 | <title>Nightly Builds</title> | ||
129 | |||
130 | <para> | ||
131 | We make nightly builds of Poky for testing purposes and to make the | ||
132 | latest developments available. The output from these builds is available | ||
133 | at <ulink url='http://autobuilder.yoctoproject.org/'/>. | ||
134 | The numbers used in the builds increase for each subsequent build and can be used to | ||
135 | reference a specific build. | ||
136 | </para> | ||
137 | |||
138 | <para> | ||
139 | Automated builds are available for "standard" Poky and for Poky SDKs and toolchains. | ||
140 | Additionally, testing versions such as poky-bleeding can be made available as | ||
141 | 'experimental' builds. | ||
142 | The toolchains can | ||
143 | be used either as external standalone toolchains or can be combined with Poky as a | ||
144 | pre-built toolchain to reduce build time. Using the external toolchains is simply a | ||
145 | case of untarring the tarball into the root of your system (it only creates files in | ||
146 | <filename>/opt/poky</filename>) and then enabling the option | ||
147 | in <filename>local.conf</filename>. | ||
148 | </para> | ||
149 | </section> | ||
150 | |||
151 | <section id='intro-getit-dev'> | ||
152 | <title>Development Checkouts</title> | ||
153 | |||
154 | <para> | ||
155 | Poky is available from our git repository located at | ||
156 | git://git.yoctoproject.org/poky.git; a web interface to the repository | ||
157 | can be accessed at <ulink url='http://git.yoctoproject.org/'/>. | ||
158 | </para> | ||
159 | |||
160 | <para> | ||
161 | The 'master' is where the development work takes place and you should use this if you're | ||
162 | interested in working with the latest cutting-edge developments. It is possible for the trunk | ||
163 | to suffer temporary periods of instability while new features are developed. | ||
164 | If these periods of instability are undesirable, we recommend using one of the release branches. | ||
165 | </para> | ||
166 | </section> | ||
167 | </section> | ||
168 | </chapter> | 136 | </chapter> |
169 | <!-- | 137 | <!-- |
170 | vim: expandtab tw=80 ts=4 | 138 | vim: expandtab tw=80 ts=4 |