diff options
Diffstat (limited to 'documentation')
| -rw-r--r-- | documentation/dev-manual/dev-manual-start.xml | 136 |
1 files changed, 86 insertions, 50 deletions
diff --git a/documentation/dev-manual/dev-manual-start.xml b/documentation/dev-manual/dev-manual-start.xml index 5e8195c8b0..c1d89bc7b9 100644 --- a/documentation/dev-manual/dev-manual-start.xml +++ b/documentation/dev-manual/dev-manual-start.xml | |||
| @@ -57,8 +57,8 @@ | |||
| 57 | <para> | 57 | <para> |
| 58 | Here is what you need to use the Yocto Project: | 58 | Here is what you need to use the Yocto Project: |
| 59 | <itemizedlist> | 59 | <itemizedlist> |
| 60 | <listitem><para><emphasis>Host System:</emphasis> You should have a reasonably current | 60 | <listitem><para><emphasis>Host System:</emphasis> |
| 61 | Linux-based host system. | 61 | You should have a reasonably current Linux-based host system. |
| 62 | You will have the best results with a recent release of Fedora, | 62 | You will have the best results with a recent release of Fedora, |
| 63 | openSUSE, Debian, Ubuntu, or CentOS as these releases are frequently tested against the Yocto Project | 63 | openSUSE, Debian, Ubuntu, or CentOS as these releases are frequently tested against the Yocto Project |
| 64 | and officially supported. | 64 | and officially supported. |
| @@ -69,15 +69,15 @@ | |||
| 69 | <para> | 69 | <para> |
| 70 | You should also have about 100 gigabytes of free disk space for building images. | 70 | You should also have about 100 gigabytes of free disk space for building images. |
| 71 | </para></listitem> | 71 | </para></listitem> |
| 72 | <listitem><para><emphasis>Packages:</emphasis> The OpenEmbedded build system | 72 | <listitem><para><emphasis>Packages:</emphasis> |
| 73 | requires that certain packages exist on your development system (e.g. Python 2.6 or 2.7). | 73 | The OpenEmbedded build system requires that certain packages |
| 74 | exist on your development system (e.g. Python 2.6 or 2.7). | ||
| 74 | See "<ulink url='&YOCTO_DOCS_QS_URL;#packages'>The Packages</ulink>" | 75 | See "<ulink url='&YOCTO_DOCS_QS_URL;#packages'>The Packages</ulink>" |
| 75 | section in the Yocto Project Quick Start and the | 76 | section in the Yocto Project Quick Start and the |
| 76 | "<ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-host-development-system'>Required Packages for the Host Development System</ulink>" | 77 | "<ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-host-development-system'>Required Packages for the Host Development System</ulink>" |
| 77 | section in the Yocto Project Reference Manual for the exact | 78 | section in the Yocto Project Reference Manual for the exact |
| 78 | package requirements and the installation commands to install | 79 | package requirements and the installation commands to install |
| 79 | them for the supported distributions. | 80 | them for the supported distributions.</para></listitem> |
| 80 | </para></listitem> | ||
| 81 | <listitem id='local-yp-release'><para><emphasis>Yocto Project Release:</emphasis> | 81 | <listitem id='local-yp-release'><para><emphasis>Yocto Project Release:</emphasis> |
| 82 | You need a release of the Yocto Project installed locally on | 82 | You need a release of the Yocto Project installed locally on |
| 83 | your development system. | 83 | your development system. |
| @@ -86,7 +86,8 @@ | |||
| 86 | and is created when you use | 86 | and is created when you use |
| 87 | <link linkend='git'>Git</link> to clone a local copy | 87 | <link linkend='git'>Git</link> to clone a local copy |
| 88 | of the upstream <filename>poky</filename> repository, | 88 | of the upstream <filename>poky</filename> repository, |
| 89 | or when you download an official release of the corresponding tarball.</para> | 89 | or when you download an official release of the corresponding |
| 90 | tarball.</para> | ||
| 90 | <para>Working from a copy of the upstream repository allows you | 91 | <para>Working from a copy of the upstream repository allows you |
| 91 | to contribute back into the Yocto Project or simply work with | 92 | to contribute back into the Yocto Project or simply work with |
| 92 | the latest software on a development branch. | 93 | the latest software on a development branch. |
| @@ -94,7 +95,7 @@ | |||
| 94 | a complete history of changes and you are working with a local | 95 | a complete history of changes and you are working with a local |
| 95 | clone of that repository, you have access to all the Yocto | 96 | clone of that repository, you have access to all the Yocto |
| 96 | Project development branches and tag names used in the upstream | 97 | Project development branches and tag names used in the upstream |
| 97 | repository.</para> | 98 | repository. |
| 98 | <note>You can view the Yocto Project Source Repositories at | 99 | <note>You can view the Yocto Project Source Repositories at |
| 99 | <ulink url='&YOCTO_GIT_URL;/cgit.cgi'></ulink> | 100 | <ulink url='&YOCTO_GIT_URL;/cgit.cgi'></ulink> |
| 100 | </note> | 101 | </note> |
| @@ -108,27 +109,40 @@ | |||
| 108 | directory of your choice.</para> | 109 | directory of your choice.</para> |
| 109 | <para>For example, the following command extracts the | 110 | <para>For example, the following command extracts the |
| 110 | Yocto Project &DISTRO; release tarball | 111 | Yocto Project &DISTRO; release tarball |
| 111 | into the current working directory and sets up the local Source Directory | 112 | into the current working directory and sets up the local |
| 112 | with a top-level folder named <filename>&YOCTO_POKY;</filename>: | 113 | Source Directory |
| 114 | with a top-level folder named | ||
| 115 | <filename>&YOCTO_POKY;</filename>: | ||
| 113 | <literallayout class='monospaced'> | 116 | <literallayout class='monospaced'> |
| 114 | $ tar xfj &YOCTO_POKY_TARBALL; | 117 | $ tar xfj &YOCTO_POKY_TARBALL; |
| 115 | </literallayout></para> | 118 | </literallayout></para> |
| 116 | <para>This method does not produce a local Git repository. | 119 | <para>This method does not produce a local Git |
| 117 | Instead, you simply end up with a snapshot of the release.</para></listitem> | 120 | repository. |
| 118 | <listitem><para><emphasis>Git Repository Method:</emphasis> If you are going to be contributing | 121 | Instead, you simply end up with a snapshot of the |
| 119 | back into the Yocto Project or you simply want to keep up | 122 | release.</para></listitem> |
| 120 | with the latest developments, you should use Git commands to set up a local | 123 | <listitem><para><emphasis>Git Repository Method:</emphasis> |
| 121 | Git repository of the upstream <filename>poky</filename> source repository. | 124 | If you are going to be contributing back into the Yocto |
| 122 | Doing so creates a repository with a complete history of changes and allows | 125 | Project or you simply want to keep up with the latest |
| 123 | you to easily submit your changes upstream to the project. | 126 | developments, you should use Git commands to set up a |
| 124 | Because you clone the repository, you have access to all the Yocto Project development | 127 | local Git repository of the upstream |
| 125 | branches and tag names used in the upstream repository.</para> | 128 | <filename>poky</filename> source repository. |
| 126 | <note>You can view the Yocto Project Source Repositories at | 129 | Doing so creates a repository with a complete history |
| 127 | <ulink url='&YOCTO_GIT_URL;/cgit.cgi'></ulink></note> | 130 | of changes and allows you to easily submit your changes |
| 128 | <para>The following transcript shows how to clone the <filename>poky</filename> | 131 | upstream to the project. |
| 129 | Git repository into the current working directory. | 132 | Because you clone the repository, you have access to all |
| 130 | The command creates the local repository in a directory named <filename>poky</filename>. | 133 | the Yocto Project development branches and tag names |
| 131 | For information on Git used within the Yocto Project, see the | 134 | used in the upstream repository. |
| 135 | <note>You can view the Yocto Project Source Repositories | ||
| 136 | at | ||
| 137 | <ulink url='&YOCTO_GIT_URL;/cgit.cgi'></ulink> | ||
| 138 | </note></para> | ||
| 139 | <para>The following transcript shows how to clone the | ||
| 140 | <filename>poky</filename> Git repository into the | ||
| 141 | current working directory. | ||
| 142 | The command creates the local repository in a directory | ||
| 143 | named <filename>poky</filename>. | ||
| 144 | For information on Git used within the Yocto Project, | ||
| 145 | see the | ||
| 132 | "<link linkend='git'>Git</link>" section. | 146 | "<link linkend='git'>Git</link>" section. |
| 133 | <literallayout class='monospaced'> | 147 | <literallayout class='monospaced'> |
| 134 | $ git clone git://git.yoctoproject.org/poky | 148 | $ git clone git://git.yoctoproject.org/poky |
| @@ -138,11 +152,14 @@ | |||
| 138 | remote: Total 203728 (delta 147444), reused 202891 (delta 146614) | 152 | remote: Total 203728 (delta 147444), reused 202891 (delta 146614) |
| 139 | Receiving objects: 100% (203728/203728), 95.54 MiB | 308 KiB/s, done. | 153 | Receiving objects: 100% (203728/203728), 95.54 MiB | 308 KiB/s, done. |
| 140 | Resolving deltas: 100% (147444/147444), done. | 154 | Resolving deltas: 100% (147444/147444), done. |
| 141 | </literallayout></para> | 155 | </literallayout> |
| 142 | <para>For another example of how to set up your own local Git repositories, see this | 156 | For another example of how to set up your own local |
| 143 | <ulink url='&YOCTO_WIKI_URL;/wiki/Transcript:_from_git_checkout_to_meta-intel_BSP'> | 157 | Git repositories, see this |
| 144 | wiki page</ulink>, which describes how to create both <filename>poky</filename> | 158 | <ulink url='&YOCTO_WIKI_URL;/wiki/Transcript:_from_git_checkout_to_meta-intel_BSP'>wiki page</ulink>, |
| 145 | and <filename>meta-intel</filename> Git repositories.</para></listitem> | 159 | which describes how to create both |
| 160 | <filename>poky</filename> and | ||
| 161 | <filename>meta-intel</filename> Git repositories. | ||
| 162 | </para></listitem> | ||
| 146 | </itemizedlist></para></listitem> | 163 | </itemizedlist></para></listitem> |
| 147 | <listitem id='local-kernel-files'><para><emphasis>Yocto Project Kernel:</emphasis> | 164 | <listitem id='local-kernel-files'><para><emphasis>Yocto Project Kernel:</emphasis> |
| 148 | If you are going to be making modifications to a supported Yocto Project kernel, you | 165 | If you are going to be making modifications to a supported Yocto Project kernel, you |
| @@ -166,7 +183,7 @@ | |||
| 166 | <filename>linux-yocto-3.10.git</filename>, while the | 183 | <filename>linux-yocto-3.10.git</filename>, while the |
| 167 | copy is named <filename>my-linux-yocto-3.10-work</filename>: | 184 | copy is named <filename>my-linux-yocto-3.10-work</filename>: |
| 168 | <literallayout class='monospaced'> | 185 | <literallayout class='monospaced'> |
| 169 | $ git clone --bare git://git.yoctoproject.org/linux-yocto-3.10 linux-yocto-3.10.git | 186 | $ git clone ‐‐bare git://git.yoctoproject.org/linux-yocto-3.10 linux-yocto-3.10.git |
| 170 | Cloning into bare repository 'linux-yocto-3.10.git'... | 187 | Cloning into bare repository 'linux-yocto-3.10.git'... |
| 171 | remote: Counting objects: 3364487, done. | 188 | remote: Counting objects: 3364487, done. |
| 172 | remote: Compressing objects: 100% (507178/507178), done. | 189 | remote: Compressing objects: 100% (507178/507178), done. |
| @@ -233,20 +250,39 @@ | |||
| 233 | See the | 250 | See the |
| 234 | "<ulink url='&YOCTO_DOCS_BSP_URL;#bsp-layers'>BSP Layers</ulink>" | 251 | "<ulink url='&YOCTO_DOCS_BSP_URL;#bsp-layers'>BSP Layers</ulink>" |
| 235 | section in the Yocto Project Board Support Package (BSP) | 252 | section in the Yocto Project Board Support Package (BSP) |
| 236 | Developer's Guide for more information on BSP Layers.</para> | 253 | Developer's Guide for more information on BSP Layers. |
| 237 | <para>You can locate the <filename>meta-intel</filename> Git | 254 | <itemizedlist> |
| 238 | repository in the "Yocto Metadata Layers" area of the Yocto | 255 | <listitem><para><emphasis>Tarball Extraction:</emphasis> |
| 239 | Project Source Repositories at | 256 | You can download any released BSP tarball from the same |
| 240 | <ulink url='&YOCTO_GIT_URL;/cgit.cgi'></ulink>.</para> | 257 | "Downloads" page of the Yocto Project |
| 241 | <para>Using | 258 | <ulink url='https://www.yoctoproject.org/downloads'>Website</ulink> |
| 242 | <link linkend='git'>Git</link> to create a local clone of the | 259 | to get the Yocto Project release. |
| 243 | upstream repository can be helpful if you are working with | 260 | Once on the "Download" page, look to the right of the |
| 244 | BSPs. | 261 | page and scroll down to find the BSP tarballs.</para> |
| 245 | Typically, you set up the <filename>meta-intel</filename> | 262 | <para>Once you have the tarball, just extract it into a |
| 246 | Git repository inside the Source Directory. | 263 | directory of your choice. |
| 247 | For example, the following transcript shows the steps to clone | 264 | Again, this method just produces a snapshot of the BSP |
| 248 | <filename>meta-intel</filename>. | 265 | layer in the form of a hierarchical directory |
| 249 | <literallayout class='monospaced'> | 266 | structure.</para></listitem> |
| 267 | <listitem><para><emphasis>Git Repository Method:</emphasis> | ||
| 268 | If you are working with a local Git repository for your | ||
| 269 | Source Directory, you should also use this method to | ||
| 270 | set up the <filename>meta-intel</filename> Git | ||
| 271 | repository. | ||
| 272 | You can locate the <filename>meta-intel</filename> Git | ||
| 273 | repository in the "Yocto Metadata Layers" area of the | ||
| 274 | Yocto Project Source Repositories at | ||
| 275 | <ulink url='&YOCTO_GIT_URL;/cgit.cgi'></ulink>.</para> | ||
| 276 | <para>Using | ||
| 277 | <link linkend='git'>Git</link> to create a local clone | ||
| 278 | of the upstream repository can be helpful if you are | ||
| 279 | working with BSPs. | ||
| 280 | Typically, you set up the | ||
| 281 | <filename>meta-intel</filename> Git repository inside | ||
| 282 | the Source Directory. | ||
| 283 | For example, the following transcript shows the steps | ||
| 284 | to clone <filename>meta-intel</filename>. | ||
| 285 | <literallayout class='monospaced'> | ||
| 250 | $ cd ~/poky | 286 | $ cd ~/poky |
| 251 | $ git clone git://git.yoctoproject.org/meta-intel.git | 287 | $ git clone git://git.yoctoproject.org/meta-intel.git |
| 252 | Cloning into 'meta-intel'... | 288 | Cloning into 'meta-intel'... |
| @@ -255,12 +291,12 @@ | |||
| 255 | remote: Total 7366 (delta 3997), reused 7299 (delta 3930) | 291 | remote: Total 7366 (delta 3997), reused 7299 (delta 3930) |
| 256 | Receiving objects: 100% (7366/7366), 2.31 MiB | 95 KiB/s, done. | 292 | Receiving objects: 100% (7366/7366), 2.31 MiB | 95 KiB/s, done. |
| 257 | Resolving deltas: 100% (3997/3997), done. | 293 | Resolving deltas: 100% (3997/3997), done. |
| 258 | </literallayout></para> | 294 | </literallayout> |
| 259 | <para>The same | 295 | The same |
| 260 | <ulink url='&YOCTO_WIKI_URL;/wiki/Transcript:_from_git_checkout_to_meta-intel_BSP'>wiki page</ulink> | 296 | <ulink url='&YOCTO_WIKI_URL;/wiki/Transcript:_from_git_checkout_to_meta-intel_BSP'>wiki page</ulink> |
| 261 | referenced earlier covers how to | 297 | referenced earlier covers how to |
| 262 | set up the <filename>meta-intel</filename> Git repository. | 298 | set up the <filename>meta-intel</filename> Git |
| 263 | </para></listitem> | 299 | repository.</para></listitem> |
| 264 | </itemizedlist></para></listitem> | 300 | </itemizedlist></para></listitem> |
| 265 | <listitem><para><emphasis>Eclipse Yocto Plug-in:</emphasis> If you are developing | 301 | <listitem><para><emphasis>Eclipse Yocto Plug-in:</emphasis> If you are developing |
| 266 | applications using the Eclipse Integrated Development Environment (IDE), | 302 | applications using the Eclipse Integrated Development Environment (IDE), |
