summaryrefslogtreecommitdiffstats
path: root/documentation
diff options
context:
space:
mode:
authorScott Rifenbark <scott.m.rifenbark@intel.com>2011-07-15 09:23:55 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-07-21 10:59:23 +0100
commita0ff15aa3db53d9f5e35f1d84ba5331d4147b46a (patch)
treed1ef41e10d695abf718ac4ce4426c60f4529ee9d /documentation
parent387ed5934e851fc6f1d5758c62104d3a1fed1175 (diff)
downloadpoky-a0ff15aa3db53d9f5e35f1d84ba5331d4147b46a.tar.gz
documentation/dev-manual/dev-manual-start.xml: Initial content added
The original content of this chapter was simply a copy of an existing adt-manual file. I have added the content for the chapter. (From yocto-docs rev: cac53540d8449f605ab40775c317b613711f3a80) 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/dev-manual/dev-manual-start.xml156
1 files changed, 125 insertions, 31 deletions
diff --git a/documentation/dev-manual/dev-manual-start.xml b/documentation/dev-manual/dev-manual-start.xml
index 18194e6521..083080a8c3 100644
--- a/documentation/dev-manual/dev-manual-start.xml
+++ b/documentation/dev-manual/dev-manual-start.xml
@@ -5,52 +5,146 @@
5 5
6<title>Getting Started with the Yocto Project</title> 6<title>Getting Started with the Yocto Project</title>
7 7
8<section id='start-intro'> 8<para>
9 <title>Introduction</title> 9 This chapter introduces the Yocto Project and gives you an idea of what you need to get started.
10 You can find enough information to set your development host up and build or use images for
11 hardware supported by the Yocto Project by reading the
12 <ulink url='http://www.yoctoproject.org/docs/yocto-quick-start/yocto-project-qs.html'>
13 Yocto Project Quick Start</ulink> located on the <ulink url='http://www.yoctoproject.org'>
14 Yocto Project website</ulink>.
15</para>
16
17<para>
18 The remainder of this chapter summarizes what is in the Yocto Project Quick Start and provides
19 some higher level concepts you might want to consider.
20</para>
21
22<section id='introducing-the-yocto-project'>
23 <title>Introducing the Yocto Project</title>
24
10 <para> 25 <para>
11 The Yocto Project presents the kernel as a fully patched, history-clean Git 26 The Yocto Project is an open-source collaboration project focused on embedded Linux developers.
12 repository. 27 The project provides a recent Linux kernel along with a set of system commands, libraries,
13 The Git tree represents the selected features, board support, 28 and system components suitable for the embedded developer.
14 and configurations extensively tested by Yocto Project. 29 The Yocto Project also features the Sato reference User Interface should you be dealing with
15 The Yocto Project kernel allows the end user to leverage community 30 devices with restricted screens.
16 best practices to seamlessly manage the development, build and debug cycles.
17 </para> 31 </para>
32
18 <para> 33 <para>
19 This manual describes the Yocto Project kernel by providing information 34 You can use the Yocto Project, which uses the BitBake build tool, to develop complete Linux
20 on its history, organization, benefits, and use. 35 images and user-space applications for architectures based on ARM, MIPS, PowerPC, x86 and x86-64.
21 The manual consists of two sections: 36 You can perform target-level testing and debugging as well as test in a hardware emulated environment.
22 <itemizedlist> 37 And, if you are an Eclipse user, you can install an Eclipse Yocto Plug-in to allow you to
23 <listitem><para>Concepts - Describes concepts behind the kernel. 38 develop within that familiar environment.
24 You will understand how the kernel is organized and why it is organized in
25 the way it is. You will understand the benefits of the kernel's organization
26 and the mechanisms used to work with the kernel and how to apply it in your
27 design process.</para></listitem>
28 <listitem><para>Using the Kernel - Describes best practices and "how-to" information
29 that lets you put the kernel to practical use. Some examples are "How to Build a
30 Project Specific Tree", "How to Examine Changes in a Branch", and "Saving Kernel
31 Modifications."</para></listitem>
32 </itemizedlist>
33 </para> 39 </para>
40</section>
41
42<section id='getting-setup'>
43 <title>Getting Setup</title>
44
34 <para> 45 <para>
35 For more information on the kernel, see the following links: 46 Here is what you need to get set up to use the Yocto Project:
36 <itemizedlist> 47 <itemizedlist>
37 <listitem><para><ulink url='http://ldn.linuxfoundation.org/book/1-a-guide-kernel-development-process'></ulink></para></listitem> 48 <listitem><para><emphasis>Host System:</emphasis> You need a recent release of Fedora,
38 <listitem><para><ulink url='http://userweb.kernel.org/~akpm/stuff/tpp.txt'></ulink></para></listitem> 49 OpenSUSE, Debian, or Ubuntu.
39 <listitem><para><ulink url='http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob_plain;f=Documentation/HOWTO;hb=HEAD'></ulink></para></listitem> 50 You should have a reasonably current Linux-based host system.
51 You should also have about 100 gigabytes of free disk space if you plan on building
52 images.</para></listitem>
53 <listitem><para><emphasis>Packages:</emphasis> Depending on your host system (Debian-based or RPM-based),
54 you need certain packages.
55 See the <ulink url='http://www.yoctoproject.org/docs/yocto-quick-start/yocto-project-qs.html#packages'>
56 "The Packages"</ulink> section in the Yocto Project Quick start for the exact package
57 requirements.</para></listitem>
58 <listitem><para><emphasis>Yocto Project Release:</emphasis> You need a release of the Yocto Project.
59 You can get set up for this one of two ways depending on whether you are going to be contributing
60 back into the Yocto Project source repository or not.
61 <itemizedlist>
62 <listitem><para><emphasis>Tarball Extraction:</emphasis> If you are not going to contribute
63 back into the Yocto Project you can simply download the Yocto Project release you want
64 from the website’s <ulink url='http://yoctoproject.org/download'>download page</ulink>.
65 Once you have the tarball, just extract it into a directory of your choice.
66 If you are interested in supported Board Support Packages (BSPs) you can also download
67 these release tarballs from the same site and locate them in a directory of your
68 choice.</para></listitem>
69 <listitem><para><emphasis>Git Method:</emphasis> If you are going to be contributing
70 back into the Yocto Project you should probably use Git commands to set up a local
71 Git repository of the Yocto Project.
72 Doing so creates a history of changes you might make and allows you to easily submit
73 changes upstream to the project.
74 For an example of how to set up your own local Git repository of Yocto Project,
75 see this
76 <ulink url='https://wiki.yoctoproject.org/wiki/Transcript:_from_git_checkout_to_meta-intel_BSP'>
77 wiki page</ulink>, which covers checking out the Yocto sources.</para></listitem>
78 </itemizedlist></para></listitem>
79 <listitem><para><emphasis>Supported Board Support Packages (BSPs):</emphasis> The same considerations
80 exist for BSPs.
81 You can get set up for BSP development one of two ways:
82 <itemizedlist>
83 <listitem><para><emphasis>Tarball Extraction:</emphasis> You can download any released
84 BSP tarball from the same
85 <ulink url='http://yoctoproject.org/download'>download site</ulink>.
86 Once you have the tarball just extract it into a directory of your choice.</para></listitem>
87 <listitem><para><emphasis>Git Method:</emphasis> For an example of how to integrate
88 the metadata for BSPs into your local Yocto Project Git repository see this
89 <ulink url='https://wiki.yoctoproject.org/wiki/Transcript:_from_git_checkout_to_meta-intel_BSP'>
90 wiki page</ulink>, which covers how to check out the meta-intel repository.</para></listitem>
91 </itemizedlist></para></listitem>
92 <listitem><para><emphasis>Eclipse Yocto Plug-in:</emphasis> If you are developing using the
93 Eclipse Integrated Development Environment (IDE) you will need this plug-in.
94 See the
95 <ulink url='http://www.yoctoproject.org/docs/adt-manual/adt-manual.html#setting-up-the-eclipse-ide'>
96 "Setting up the Eclipse IDE"</ulink> section in the Yocto Application Development Toolkit (ADT)
97 User’s Guide for more information.</para></listitem>
40 </itemizedlist> 98 </itemizedlist>
41 <para>
42 You can find more information on Yocto Project by visiting the website at
43 <ulink url='http://www.yoctoproject.org'></ulink>.
44 </para>
45 </para> 99 </para>
46</section> 100</section>
47 101
102<section id='building-images'>
103 <title>Building Images</title>
48 104
105 <para>
106 The build process creates an entire Linux distribution, including the toolchain, from source.
107 For more information on this topic, see the
108 <ulink url='http://www.yoctoproject.org/docs/yocto-quick-start/yocto-project-qs.html#building-image'>
109 "Building an Image"</ulink> section in the Yocto Project Quick Start.
110 </para>
49 111
112 <para>
113 The build process is as follows:
114 <orderedlist>
115 <listitem><para>Make sure you have the Yocto Project files as described in the
116 previous section.</para></listitem>
117 <listitem><para>Initialize the build environment by sourcing a build environment
118 script.</para></listitem>
119 <listitem><para>Make sure the <filename>conf/local.conf</filename> configuration file is set
120 up how you want it.
121 This file defines the target machine architecture and and other build configurations.</para></listitem>
122 <listitem><para>Build the image using the BitBake command.
123 If you want information on Bitbake, see the user manual at
124 <ulink url='http://docs.openembedded.org/bitbake/html'></ulink>.</para></listitem>
125 <listitem><para>Optionally, you can run the image in the QEMU emulator.</para></listitem>
126 </orderedlist>
127 </para>
128</section>
50 129
130<section id='using-pre-built-binaries-and-qemu'>
131 <title>Using Pre-Built Binaries and QEMU</title>
51 132
133 <para>
134 Another option you have to get started is to use a pre-built binary.
135 This scenario is ideal for developing software applications to run on your target hardware.
136 To do this you need to install the stand-alone Yocto toolchain tarball and then download the
137 pre-built kernel that you will boot using the QEMU emulator.
138 Next, you must download the filesystem for your target machine’s architecture.
139 Finally, you set up the environment to emulate the hardware then start the emulator.
140 </para>
52 141
53 142 <para>
143 You can find details on all these steps in the
144 <ulink url='http://www.yoctoproject.org/docs/yocto-quick-start/yocto-project-qs.html#using-pre-built'>
145 "Using Pre-Built Binaries and QEMU"</ulink> section in the Yocto Project Quick Start.
146 </para>
147</section>
54</chapter> 148</chapter>
55<!-- 149<!--
56vim: expandtab tw=80 ts=4 150vim: expandtab tw=80 ts=4