diff options
Diffstat (limited to 'documentation')
-rw-r--r-- | documentation/adt-manual/adt-prepare.xml | 122 |
1 files changed, 76 insertions, 46 deletions
diff --git a/documentation/adt-manual/adt-prepare.xml b/documentation/adt-manual/adt-prepare.xml index 5e403aa84b..a2618c6ae2 100644 --- a/documentation/adt-manual/adt-prepare.xml +++ b/documentation/adt-manual/adt-prepare.xml | |||
@@ -194,7 +194,8 @@ | |||
194 | <para> | 194 | <para> |
195 | If you want to simply install the cross-toolchain by hand, you can do so by using an existing | 195 | If you want to simply install the cross-toolchain by hand, you can do so by using an existing |
196 | cross-toolchain tarball. | 196 | cross-toolchain tarball. |
197 | If you install the cross-toolchain by hand, you will have to set up the target sysroot separately. | 197 | If you use this method to install the cross-toolchain and you still need to install the target |
198 | sysroot, you will have to install sysroot separately. | ||
198 | </para> | 199 | </para> |
199 | 200 | ||
200 | <para> | 201 | <para> |
@@ -213,14 +214,21 @@ | |||
213 | <literallayout class='monospaced'> | 214 | <literallayout class='monospaced'> |
214 | yocto-eglibc-x86_64-i586-toolchain-gmae-1.1.tar.bz2 | 215 | yocto-eglibc-x86_64-i586-toolchain-gmae-1.1.tar.bz2 |
215 | </literallayout> | 216 | </literallayout> |
216 | <note>As an alternative to steps one and two, you can build the toolchain tarball | 217 | The cross-toolchain tarballs provided by the Yocto Project support development |
218 | of GNOME platorms on mobile devices (GMAE). | ||
219 | <note><para>As an alternative to steps one and two, you can build the toolchain tarball | ||
217 | if you have a Yocto Project build tree. | 220 | if you have a Yocto Project build tree. |
218 | Use the <filename>bitbake meta-toolchain</filename> command after you have | 221 | If you need GMAE, you should use the <filename>bitbake meta-toolchain-gmae</filename> |
222 | command. | ||
223 | The resulting tarball will support such development. | ||
224 | However, if you not concerned with GMAE, | ||
225 | you can generate the tarball using <filename>bitbake meta-toolchain</filename>.</para> | ||
226 | <para>Use the appropriate <filename>bitbake</filename> command only after you have | ||
219 | sourced the <filename>oe-build-init script</filename> located in the Yocto | 227 | sourced the <filename>oe-build-init script</filename> located in the Yocto |
220 | Project files. | 228 | Project files. |
221 | When the <filename>bitbake</filename> command completes, the toolchain tarball will | 229 | When the <filename>bitbake</filename> command completes, the toolchain tarball will |
222 | be in <filename>tmp/deploy/sdk</filename> in the Yocto Project build tree. | 230 | be in <filename>tmp/deploy/sdk</filename> in the Yocto Project build tree. |
223 | </note></para></listitem> | 231 | </para></note></para></listitem> |
224 | <listitem><para>Make sure you are in the root directory with root privileges and then expand | 232 | <listitem><para>Make sure you are in the root directory with root privileges and then expand |
225 | the tarball. | 233 | the tarball. |
226 | The tarball expands into <filename>/opt/poky/$SDKVERSION</filename>. | 234 | The tarball expands into <filename>/opt/poky/$SDKVERSION</filename>. |
@@ -229,11 +237,6 @@ | |||
229 | </para></listitem> | 237 | </para></listitem> |
230 | </orderedlist> | 238 | </orderedlist> |
231 | </para> | 239 | </para> |
232 | |||
233 | <para> | ||
234 | After installing the toolchain, you must locate the target sysroot tarball and unpack it | ||
235 | into a location of your choice. | ||
236 | </para> | ||
237 | </section> | 240 | </section> |
238 | 241 | ||
239 | <section id='using-the-toolchain-from-within-the-build-tree'> | 242 | <section id='using-the-toolchain-from-within-the-build-tree'> |
@@ -242,7 +245,14 @@ | |||
242 | <para> | 245 | <para> |
243 | A final way of installing just the cross-toolchain is to use BitBake within an existing | 246 | A final way of installing just the cross-toolchain is to use BitBake within an existing |
244 | Yocto Project build tree. | 247 | Yocto Project build tree. |
245 | Follow these steps: | 248 | This method installs the toolchain into the Yocto Project build tree, not the |
249 | <filename>/opt</filename> directory. | ||
250 | As with the previous method, if you need to install the target sysroot, you must | ||
251 | do this separately. | ||
252 | </para> | ||
253 | |||
254 | <para> | ||
255 | Follow these steps to install the toolchain into the build tree: | ||
246 | <orderedlist> | 256 | <orderedlist> |
247 | <listitem><para>Source the environment setup script located in the Yocto Project | 257 | <listitem><para>Source the environment setup script located in the Yocto Project |
248 | files. | 258 | files. |
@@ -268,27 +278,14 @@ | |||
268 | Be sure to run the <filename>bitbake</filename> command immediately | 278 | Be sure to run the <filename>bitbake</filename> command immediately |
269 | after checking or editing the <filename>local.conf</filename> but without | 279 | after checking or editing the <filename>local.conf</filename> but without |
270 | changing your working directory.</note> | 280 | changing your working directory.</note> |
271 | Once BitBake finishes, the cross-toolchain is installed. | 281 | Once BitBake finishes, the cross-toolchain is installed within the Yocto Project |
282 | build tree. | ||
272 | You will notice environment setup files for the cross-toolchain in the | 283 | You will notice environment setup files for the cross-toolchain in the |
273 | Yocto Project build tree in the <filename>tmp</filename> directory. | 284 | Yocto Project build tree in the <filename>tmp</filename> directory. |
274 | Setup script filenames contain the strings <filename>environment-setup</filename>. | 285 | Setup script filenames contain the strings <filename>environment-setup</filename>. |
275 | </para></listitem> | 286 | </para></listitem> |
276 | </orderedlist> | 287 | </orderedlist> |
277 | </para> | 288 | </para> |
278 | |||
279 | <para> | ||
280 | After installing the toolchain, you must locate the target sysroot tarball and unpack | ||
281 | it in a directory of your choice. | ||
282 | </para> | ||
283 | |||
284 | <para> | ||
285 | WRITER'S NOTE: Right now I am a little fuzzy on just how you do this. | ||
286 | I am not sure if you just grab what is in <filename>build/tmp/deploy/images</filename> | ||
287 | and then unpack it with the <filename>tar -xjvf [tarball] [directory]</filename> or | ||
288 | if you have to run the tarball environment setup script found in | ||
289 | <filename>build/tmp</filename> and then run the | ||
290 | <filename>runqemu-extract-sdk [tarball] [directory]</filename> command. | ||
291 | </para> | ||
292 | </section> | 289 | </section> |
293 | </section> | 290 | </section> |
294 | 291 | ||
@@ -301,9 +298,8 @@ | |||
301 | If you used the ADT Installer or used an existing ADT tarball to install the ADT, | 298 | If you used the ADT Installer or used an existing ADT tarball to install the ADT, |
302 | then you can find this script in the <filename>/opt/poky/$SDKVERSION</filename> | 299 | then you can find this script in the <filename>/opt/poky/$SDKVERSION</filename> |
303 | directory. | 300 | directory. |
304 | If you used BitBake and the Yocto Project Build Tree to install the cross-toolchain, | 301 | If you installed the toolchain in the build tree, you can find the environment setup |
305 | then you can find the environment setup scripts in in the Yocto Project build tree | 302 | scripts in the Yocto Project build tree's <filename>tmp</filename> directory. |
306 | in the <filename>tmp</filename> directory. | ||
307 | </para> | 303 | </para> |
308 | 304 | ||
309 | <para> | 305 | <para> |
@@ -324,18 +320,29 @@ | |||
324 | 320 | ||
325 | <para> | 321 | <para> |
326 | You will need to have a kernel and filesystem image to boot using your | 322 | You will need to have a kernel and filesystem image to boot using your |
327 | hardware or the QEMU emulator. | 323 | hardware or the QEMU emulator. |
328 | That means you either have to build them or know where to get them. | 324 | Furthermore, if you plan on booting your image using NFS or you want to use the root filesystem |
329 | You can find a quick example of how to build an image in the | 325 | as the target sysroot, you need to extract the root filesystem. |
330 | "<ulink url='http://www.yoctoproject.org/docs/1.1/yocto-project-qs/yocto-project-qs.html#building-image'>Building an Image</ulink>" section of | 326 | This section describes how to get set up with the kernel and filesystem images. |
331 | <ulink url='http://www.yoctoproject.org/docs/1.1/yocto-project-qs/yocto-project-qs.html'> | 327 | </para> |
332 | The Yocto Project Quick Start</ulink>. | 328 | |
333 | <note><para> | 329 | <section id='getting-the-images'> |
334 | The Yocto Project provides basic kernels and filesystem images for several | 330 | <title>Getting the Images</title> |
331 | |||
332 | <para> | ||
333 | To get the kernel and filesystem images you either have to build them or download | ||
334 | pre-built versions. | ||
335 | You can find examples for both these situations in the | ||
336 | "<ulink url='http://www.yoctoproject.org/docs/1.1/yocto-project-qs/yocto-project-qs.html#test-run'>A | ||
337 | Quick Test Run</ulink>" section of | ||
338 | <ulink url='http://www.yoctoproject.org/docs/1.1/yocto-project-qs/yocto-project-qs.html'> | ||
339 | The Yocto Project Quick Start</ulink>. | ||
340 | <note><para> | ||
341 | The Yocto Project provides basic kernel and filesystem images for several | ||
335 | architectures (<filename>x86</filename>, <filename>x86-64</filename>, | 342 | architectures (<filename>x86</filename>, <filename>x86-64</filename>, |
336 | <filename>mips</filename>, <filename>powerpc</filename>, and <filename>arm</filename>) | 343 | <filename>mips</filename>, <filename>powerpc</filename>, and <filename>arm</filename>) |
337 | that you can use unaltered in the QEMU emulator. | 344 | that you can use unaltered in the QEMU emulator. |
338 | These kernels and filesystem images reside in the Yocto Project release | 345 | These kernel images reside in the Yocto Project release |
339 | area - <ulink url='http://autobuilder.yoctoproject.org/downloads/yocto-1.1/machines/'></ulink> | 346 | area - <ulink url='http://autobuilder.yoctoproject.org/downloads/yocto-1.1/machines/'></ulink> |
340 | and are ideal for experimentation within Yocto Project.</para> | 347 | and are ideal for experimentation within Yocto Project.</para> |
341 | <para>If you plan on remotely deploying and debugging your application from within the | 348 | <para>If you plan on remotely deploying and debugging your application from within the |
@@ -345,16 +352,39 @@ | |||
345 | Reference: Images</ulink> in | 352 | Reference: Images</ulink> in |
346 | <ulink url='http://www.yoctoproject.org/docs/1.1/poky-ref-manual/poky-ref-manual.html'> | 353 | <ulink url='http://www.yoctoproject.org/docs/1.1/poky-ref-manual/poky-ref-manual.html'> |
347 | The Yocto Project Reference Manual</ulink>.</para> | 354 | The Yocto Project Reference Manual</ulink>.</para> |
348 | </note> | 355 | </note> |
349 | </para> | 356 | </para> |
357 | </section> | ||
350 | 358 | ||
351 | <para> | 359 | <section id='extracting-the-root-filesystem'> |
352 | WRITER'S NOTE: It seems to me that you need to take steps to unpack the image filesystem | 360 | <title>Extracting the Root Filesystem</title> |
353 | at this point. | 361 | |
354 | This would involve running the tarball environment setup script found in | 362 | <para> |
355 | <filename>build/tmp</filename> and then running the | 363 | You must extract the root filesystem if you want to boot the image using NFS or you |
356 | <filename>runqemu-extract-sdk [tarball] [directory]</filename> command. | 364 | want to use the root filesystem as the target sysroot. |
357 | </para> | 365 | For example, the Eclipse IDE environment with the Eclipse Yocto Plug-in installed allows you |
366 | to boot under NFS. | ||
367 | Another example is if you want to test your image against actual hardware with the | ||
368 | root filesystem as the target sysroot. | ||
369 | </para> | ||
370 | |||
371 | <para> | ||
372 | To extract the root filesystem you use the <filename>runqemu-extract-sdk</filename> command on the | ||
373 | filesystem image. | ||
374 | For example, the following command extracts the root filesystem from a previously built | ||
375 | filesystem image tarball named | ||
376 | <filename>core-image-sato-sdk-qemux86-2011091411831.rootfs.tar.bz2</filename>. | ||
377 | The example extracts the root filesystem into the <filename>$HOME/qemux86-sato</filename> | ||
378 | directory: | ||
379 | <literallayout class='monospaced'> | ||
380 | $ runqemu-extract-sdk \ | ||
381 | tmp/deploy/images/core-image-sato-sdk-qemux86-2011091411831.rootfs.tar.bz2 \ | ||
382 | $HOME/qemux86-sato | ||
383 | </literallayout> | ||
384 | In this case, you could now point to the target sysroot at | ||
385 | <filename>$HOME/qemux86-sato</filename>. | ||
386 | </para> | ||
387 | </section> | ||
358 | </section> | 388 | </section> |
359 | 389 | ||
360 | </chapter> | 390 | </chapter> |