diff options
| -rw-r--r-- | documentation/ref-manual/faq.xml | 142 | 
1 files changed, 73 insertions, 69 deletions
| diff --git a/documentation/ref-manual/faq.xml b/documentation/ref-manual/faq.xml index f96b64c1a5..688fef8503 100644 --- a/documentation/ref-manual/faq.xml +++ b/documentation/ref-manual/faq.xml | |||
| @@ -134,10 +134,10 @@ | |||
| 134 | </question> | 134 | </question> | 
| 135 | <answer> | 135 | <answer> | 
| 136 | <para> | 136 | <para> | 
| 137 | Because you can use the same set of recipes to create output of | 137 | Because you can use the same set of recipes to create output of | 
| 138 | various formats, the output of an OpenEmbedded build depends on | 138 | various formats, the output of an OpenEmbedded build depends on | 
| 139 | how you start it. | 139 | how you start it. | 
| 140 | Usually, the output is a flashable image ready for the target | 140 | Usually, the output is a flashable image ready for the target | 
| 141 | device. | 141 | device. | 
| 142 | </para> | 142 | </para> | 
| 143 | </answer> | 143 | </answer> | 
| @@ -168,12 +168,12 @@ | |||
| 168 | </question> | 168 | </question> | 
| 169 | <answer> | 169 | <answer> | 
| 170 | <para> | 170 | <para> | 
| 171 | The OpenEmbedded build system can build packages in various | 171 | The OpenEmbedded build system can build packages in various | 
| 172 | formats such as IPK for OPKG, Debian package | 172 | formats such as IPK for OPKG, Debian package | 
| 173 | (<filename>.deb</filename>), or RPM. | 173 | (<filename>.deb</filename>), or RPM. | 
| 174 | You can then upgrade the packages using the package tools on | 174 | You can then upgrade the packages using the package tools on | 
| 175 | the device, much like on a desktop distribution such as | 175 | the device, much like on a desktop distribution such as | 
| 176 | Ubuntu or Fedora. | 176 | Ubuntu or Fedora. | 
| 177 | However, package management on the target is entirely optional. | 177 | However, package management on the target is entirely optional. | 
| 178 | </para> | 178 | </para> | 
| 179 | </answer> | 179 | </answer> | 
| @@ -249,7 +249,7 @@ | |||
| 249 | 249 | ||
| 250 | <note> | 250 | <note> | 
| 251 | <para>For information on distributions that the Yocto Project | 251 | <para>For information on distributions that the Yocto Project | 
| 252 | uses during validation, see the | 252 | uses during validation, see the | 
| 253 | <ulink url='&YOCTO_WIKI_URL;/wiki/Distribution_Support'>Distribution Support</ulink> | 253 | <ulink url='&YOCTO_WIKI_URL;/wiki/Distribution_Support'>Distribution Support</ulink> | 
| 254 | Wiki page.</para> | 254 | Wiki page.</para> | 
| 255 | <para>For notes about using the Yocto Project on a RHEL 4-based | 255 | <para>For notes about using the Yocto Project on a RHEL 4-based | 
| @@ -297,8 +297,8 @@ | |||
| 297 | </filename> = "0" in the <filename>.bb</filename> file but make sure the package is | 297 | </filename> = "0" in the <filename>.bb</filename> file but make sure the package is | 
| 298 | manually marked as | 298 | manually marked as | 
| 299 | machine-specific for the case that needs it. | 299 | machine-specific for the case that needs it. | 
| 300 | The code that handles | 300 | The code that handles | 
| 301 | <filename>SRC_URI_OVERRIDES_PACKAGE_ARCH</filename> is in | 301 | <filename>SRC_URI_OVERRIDES_PACKAGE_ARCH</filename> is in | 
| 302 | the <filename>meta/classes/base.bbclass</filename> file. | 302 | the <filename>meta/classes/base.bbclass</filename> file. | 
| 303 | </para> | 303 | </para> | 
| 304 | </answer> | 304 | </answer> | 
| @@ -320,8 +320,8 @@ | |||
| 320 | http_proxy = http://proxy.yoyodyne.com:18023/ | 320 | http_proxy = http://proxy.yoyodyne.com:18023/ | 
| 321 | ftp_proxy = http://proxy.yoyodyne.com:18023/ | 321 | ftp_proxy = http://proxy.yoyodyne.com:18023/ | 
| 322 | </literallayout> | 322 | </literallayout> | 
| 323 | The Yocto Project also includes a | 323 | The Yocto Project also includes a | 
| 324 | <filename>site.conf.sample</filename> file that shows how to | 324 | <filename>site.conf.sample</filename> file that shows how to | 
| 325 | configure CVS and Git proxy servers if needed. | 325 | configure CVS and Git proxy servers if needed. | 
| 326 | </para> | 326 | </para> | 
| 327 | </answer> | 327 | </answer> | 
| @@ -352,19 +352,19 @@ | |||
| 352 | </question> | 352 | </question> | 
| 353 | <answer> | 353 | <answer> | 
| 354 | <para> | 354 | <para> | 
| 355 | If the same build is failing in totally different and random | 355 | If the same build is failing in totally different and random | 
| 356 | ways, the most likely explanation is: | 356 | ways, the most likely explanation is: | 
| 357 | <itemizedlist> | 357 | <itemizedlist> | 
| 358 | <listitem><para>The hardware you are running the build on | 358 | <listitem><para>The hardware you are running the build on | 
| 359 | has some problem.</para></listitem> | 359 | has some problem.</para></listitem> | 
| 360 | <listitem><para>You are running the build under | 360 | <listitem><para>You are running the build under | 
| 361 | virtualization, in which case the virtualization | 361 | virtualization, in which case the virtualization | 
| 362 | probably has bugs.</para></listitem> | 362 | probably has bugs.</para></listitem> | 
| 363 | </itemizedlist> | 363 | </itemizedlist> | 
| 364 | The OpenEmbedded build system processes a massive amount of | 364 | The OpenEmbedded build system processes a massive amount of | 
| 365 | data that causes lots of network, disk and CPU activity and | 365 | data that causes lots of network, disk and CPU activity and | 
| 366 | is sensitive to even single-bit failures in any of these areas. | 366 | is sensitive to even single-bit failures in any of these areas. | 
| 367 | True random failures have always been traced back to hardware | 367 | True random failures have always been traced back to hardware | 
| 368 | or virtualization issues. | 368 | or virtualization issues. | 
| 369 | </para> | 369 | </para> | 
| 370 | </answer> | 370 | </answer> | 
| @@ -378,18 +378,18 @@ | |||
| 378 | </question> | 378 | </question> | 
| 379 | <answer> | 379 | <answer> | 
| 380 | <para> | 380 | <para> | 
| 381 | This is a difficult question and you need to consult your lawyer | 381 | This is a difficult question and you need to consult your lawyer | 
| 382 | for the answer for your specific case. | 382 | for the answer for your specific case. | 
| 383 | It is worth bearing in mind that for GPL compliance, there needs | 383 | It is worth bearing in mind that for GPL compliance, there needs | 
| 384 | to be enough information shipped to allow someone else to | 384 | to be enough information shipped to allow someone else to | 
| 385 | rebuild and produce the same end result you are shipping. | 385 | rebuild and produce the same end result you are shipping. | 
| 386 | This means sharing the source code, any patches applied to it, | 386 | This means sharing the source code, any patches applied to it, | 
| 387 | and also any configuration information about how that package | 387 | and also any configuration information about how that package | 
| 388 | was configured and built. | 388 | was configured and built. | 
| 389 | </para> | 389 | </para> | 
| 390 | 390 | ||
| 391 | <para> | 391 | <para> | 
| 392 | You can find more information on licensing in the | 392 | You can find more information on licensing in the | 
| 393 | "<ulink url='&YOCTO_DOCS_DEV_URL;#licensing'>Licensing</ulink>" | 393 | "<ulink url='&YOCTO_DOCS_DEV_URL;#licensing'>Licensing</ulink>" | 
| 394 | and "<ulink url='&YOCTO_DOCS_DEV_URL;#maintaining-open-source-license-compliance-during-your-products-lifecycle'>Maintaining Open Source License Compliance During Your Product's Lifecycle</ulink>" | 394 | and "<ulink url='&YOCTO_DOCS_DEV_URL;#maintaining-open-source-license-compliance-during-your-products-lifecycle'>Maintaining Open Source License Compliance During Your Product's Lifecycle</ulink>" | 
| 395 | sections, both of which are in the Yocto Project Development | 395 | sections, both of which are in the Yocto Project Development | 
| @@ -410,7 +410,7 @@ | |||
| 410 | "<ulink url='&YOCTO_DOCS_BSP_URL;#bsp-filelayout-misc-recipes'>Miscellaneous BSP-Specific Recipe Files</ulink>" | 410 | "<ulink url='&YOCTO_DOCS_BSP_URL;#bsp-filelayout-misc-recipes'>Miscellaneous BSP-Specific Recipe Files</ulink>" | 
| 411 | section in the Yocto Project Board Support Packages (BSP) | 411 | section in the Yocto Project Board Support Packages (BSP) | 
| 412 | Developer's Guide. | 412 | Developer's Guide. | 
| 413 | Set the <filename>HAVE_TOUCHSCREEN</filename> variable equal to | 413 | Set the <filename>HAVE_TOUCHSCREEN</filename> variable equal to | 
| 414 | one as follows: | 414 | one as follows: | 
| 415 | <literallayout class='monospaced'> | 415 | <literallayout class='monospaced'> | 
| 416 | HAVE_TOUCHSCREEN=1 | 416 | HAVE_TOUCHSCREEN=1 | 
| @@ -433,7 +433,7 @@ | |||
| 433 | file. | 433 | file. | 
| 434 | See the "<ulink url='&YOCTO_DOCS_BSP_URL;#bsp-filelayout-misc-recipes'>Miscellaneous BSP-Specific Recipe Files</ulink>" | 434 | See the "<ulink url='&YOCTO_DOCS_BSP_URL;#bsp-filelayout-misc-recipes'>Miscellaneous BSP-Specific Recipe Files</ulink>" | 
| 435 | section in the Yocto Project Board Support Packages (BSP) | 435 | section in the Yocto Project Board Support Packages (BSP) | 
| 436 | Developer's Guide for information on creating these types of | 436 | Developer's Guide for information on creating these types of | 
| 437 | miscellaneous recipe files. | 437 | miscellaneous recipe files. | 
| 438 | </para> | 438 | </para> | 
| 439 | <para> | 439 | <para> | 
| @@ -454,32 +454,32 @@ | |||
| 454 | </question> | 454 | </question> | 
| 455 | <answer> | 455 | <answer> | 
| 456 | <para> | 456 | <para> | 
| 457 | By default, the OpenEmbedded build system creates images | 457 | By default, the OpenEmbedded build system creates images | 
| 458 | that are 1.3 times the size of the populated root filesystem. | 458 | that are 1.3 times the size of the populated root filesystem. | 
| 459 | To affect the image size, you need to set various | 459 | To affect the image size, you need to set various | 
| 460 | configurations: | 460 | configurations: | 
| 461 | <itemizedlist> | 461 | <itemizedlist> | 
| 462 | <listitem><para><emphasis>Image Size:</emphasis> | 462 | <listitem><para><emphasis>Image Size:</emphasis> | 
| 463 | The OpenEmbedded build system uses the | 463 | The OpenEmbedded build system uses the | 
| 464 | <link linkend='var-IMAGE_ROOTFS_SIZE'><filename>IMAGE_ROOTFS_SIZE</filename></link> | 464 | <link linkend='var-IMAGE_ROOTFS_SIZE'><filename>IMAGE_ROOTFS_SIZE</filename></link> | 
| 465 | variable to define the size of the image in Kbytes. | 465 | variable to define the size of the image in Kbytes. | 
| 466 | The build system determines the size by taking into | 466 | The build system determines the size by taking into | 
| 467 | account the initial root filesystem size before any | 467 | account the initial root filesystem size before any | 
| 468 | modifications such as requested size for the image and | 468 | modifications such as requested size for the image and | 
| 469 | any requested additional free disk space to be | 469 | any requested additional free disk space to be | 
| 470 | added to the image.</para></listitem> | 470 | added to the image.</para></listitem> | 
| 471 | <listitem><para><emphasis>Overhead:</emphasis> | 471 | <listitem><para><emphasis>Overhead:</emphasis> | 
| 472 | Use the | 472 | Use the | 
| 473 | <link linkend='var-IMAGE_OVERHEAD_FACTOR'><filename>IMAGE_OVERHEAD_FACTOR</filename></link> | 473 | <link linkend='var-IMAGE_OVERHEAD_FACTOR'><filename>IMAGE_OVERHEAD_FACTOR</filename></link> | 
| 474 | variable to define the multiplier that the build system | 474 | variable to define the multiplier that the build system | 
| 475 | applies to the initial image size, which is 1.3 by | 475 | applies to the initial image size, which is 1.3 by | 
| 476 | default.</para></listitem> | 476 | default.</para></listitem> | 
| 477 | <listitem><para><emphasis>Additional Free Space:</emphasis> | 477 | <listitem><para><emphasis>Additional Free Space:</emphasis> | 
| 478 | Use the | 478 | Use the | 
| 479 | <link linkend='var-IMAGE_ROOTFS_EXTRA_SPACE'><filename>IMAGE_ROOTFS_EXTRA_SPACE</filename></link> | 479 | <link linkend='var-IMAGE_ROOTFS_EXTRA_SPACE'><filename>IMAGE_ROOTFS_EXTRA_SPACE</filename></link> | 
| 480 | variable to add additional free space to the image. | 480 | variable to add additional free space to the image. | 
| 481 | The build system adds this space to the image after | 481 | The build system adds this space to the image after | 
| 482 | it determines its | 482 | it determines its | 
| 483 | <filename>IMAGE_ROOTFS_SIZE</filename>. | 483 | <filename>IMAGE_ROOTFS_SIZE</filename>. | 
| 484 | </para></listitem> | 484 | </para></listitem> | 
| 485 | </itemizedlist> | 485 | </itemizedlist> | 
| @@ -495,11 +495,11 @@ | |||
| 495 | </question> | 495 | </question> | 
| 496 | <answer> | 496 | <answer> | 
| 497 | <para> | 497 | <para> | 
| 498 | The Yocto Project team has tried to do this before but too | 498 | The Yocto Project team has tried to do this before but too | 
| 499 | many of the tools the OpenEmbedded build system depends on, | 499 | many of the tools the OpenEmbedded build system depends on, | 
| 500 | such as <filename>autoconf</filename>, break when they find | 500 | such as <filename>autoconf</filename>, break when they find | 
| 501 | spaces in pathnames. | 501 | spaces in pathnames. | 
| 502 | Until that situation changes, the team will not support spaces | 502 | Until that situation changes, the team will not support spaces | 
| 503 | in pathnames. | 503 | in pathnames. | 
| 504 | </para> | 504 | </para> | 
| 505 | </answer> | 505 | </answer> | 
| @@ -515,11 +515,11 @@ | |||
| 515 | <para> | 515 | <para> | 
| 516 | The toolchain configuration is very flexible and customizable. | 516 | The toolchain configuration is very flexible and customizable. | 
| 517 | It is primarily controlled with the | 517 | It is primarily controlled with the | 
| 518 | <filename><link linkend='var-TCMODE'>TCMODE</link></filename> | 518 | <filename><link linkend='var-TCMODE'>TCMODE</link></filename> | 
| 519 | variable. | 519 | variable. | 
| 520 | This variable controls which <filename>tcmode-*.inc</filename> | 520 | This variable controls which <filename>tcmode-*.inc</filename> | 
| 521 | file to include from the | 521 | file to include from the | 
| 522 | <filename>meta/conf/distro/include</filename> directory within | 522 | <filename>meta/conf/distro/include</filename> directory within | 
| 523 | the | 523 | the | 
| 524 | <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>. | 524 | <ulink url='&YOCTO_DOCS_DEV_URL;#source-directory'>Source Directory</ulink>. | 
| 525 | </para> | 525 | </para> | 
| @@ -528,33 +528,37 @@ | |||
| 528 | The default value of <filename>TCMODE</filename> is "default" | 528 | The default value of <filename>TCMODE</filename> is "default" | 
| 529 | (i.e. <filename>tcmode-default.inc</filename>). | 529 | (i.e. <filename>tcmode-default.inc</filename>). | 
| 530 | However, other patterns are accepted. | 530 | However, other patterns are accepted. | 
| 531 | In particular, "external-*" refers to external toolchains of | 531 | In particular, "external-*" refers to external toolchains of | 
| 532 | which there are some basic examples included in the | 532 | which there are some basic examples included in the | 
| 533 | OpenEmbedded Core (<filename>meta</filename>). | 533 | OpenEmbedded Core (<filename>meta</filename>). | 
| 534 | You can use your own custom toolchain definition in your own | 534 | You can use your own custom toolchain definition in your own | 
| 535 | layer (or as defined in the <filename>local.conf</filename> | 535 | layer (or as defined in the <filename>local.conf</filename> | 
| 536 | file) at the location | 536 | file) at the location | 
| 537 | <filename>conf/distro/include/tcmode-*.inc</filename>. | 537 | <filename>conf/distro/include/tcmode-*.inc</filename>. | 
| 538 | </para> | 538 | </para> | 
| 539 | 539 | ||
| 540 | <para> | 540 | <para> | 
| 541 | In addition to the toolchain configuration, you also need a | 541 | In addition to the toolchain configuration, you also need a | 
| 542 | corresponding toolchain recipe file. | 542 | corresponding toolchain recipe file. | 
| 543 | This recipe file needs to package up any pre-built objects in | 543 | This recipe file needs to package up any pre-built objects in | 
| 544 | the toolchain such as <filename>libgcc</filename>, | 544 | the toolchain such as <filename>libgcc</filename>, | 
| 545 | <filename>libstdcc++</filename>, any locales, and | 545 | <filename>libstdcc++</filename>, any locales, and | 
| 546 | <filename>libc</filename>. | 546 | <filename>libc</filename>. | 
| 547 | An example is the | 547 | An example is the | 
| 548 | <filename>external-sourcery-toolchain.bb</filename>, which is | 548 | <filename>external-sourcery-toolchain.bb</filename>, which is | 
| 549 | located in <filename>meta/recipes-core/meta/</filename> within | 549 | located in <filename>meta/recipes-core/meta/</filename> within | 
| 550 | the Source Directory. | 550 | the Source Directory. | 
| 551 | </para> | 551 | </para> | 
| 552 | 552 | ||
| 553 | <para> | 553 | <para> | 
| 554 | For information on installing and using cross-development | 554 | For information on installing and using cross-development | 
| 555 | toolchains, see the | 555 | toolchains, see the | 
| 556 | "<ulink url='&YOCTO_DOCS_ADT_URL;#installing-the-adt'>Installing the ADT and Toolchains</ulink>" | 556 | "<ulink url='&YOCTO_DOCS_ADT_URL;#installing-the-adt'>Installing the ADT and Toolchains</ulink>" | 
| 557 | section in the Yocto Project Application Developer's Guide. | 557 | section in the Yocto Project Application Developer's Guide. | 
| 558 | For general information on cross-development toolchains, see | ||
| 559 | the | ||
| 560 | "<link linkend='cross-development-toolchain-generation'>Cross-Development Toolchain Generation</link>" | ||
| 561 | section. | ||
| 558 | </para> | 562 | </para> | 
| 559 | </answer> | 563 | </answer> | 
| 560 | </qandaentry> | 564 | </qandaentry> | 
| @@ -625,7 +629,7 @@ | |||
| 625 | <literallayout class='monospaced'> | 629 | <literallayout class='monospaced'> | 
| 626 | BB_FETCH_PREMIRRORONLY = "1" | 630 | BB_FETCH_PREMIRRORONLY = "1" | 
| 627 | </literallayout> | 631 | </literallayout> | 
| 628 | This statement limits the build system to pulling source | 632 | This statement limits the build system to pulling source | 
| 629 | from the <filename>PREMIRRORS</filename> only. | 633 | from the <filename>PREMIRRORS</filename> only. | 
| 630 | Again, this technique is useful for reproducing builds. | 634 | Again, this technique is useful for reproducing builds. | 
| 631 | </para> | 635 | </para> | 
| @@ -634,7 +638,7 @@ | |||
| 634 | <literallayout class='monospaced'> | 638 | <literallayout class='monospaced'> | 
| 635 | BB_GENERATE_MIRROR_TARBALLS = "1" | 639 | BB_GENERATE_MIRROR_TARBALLS = "1" | 
| 636 | </literallayout> | 640 | </literallayout> | 
| 637 | This statement tells the build system to generate mirror | 641 | This statement tells the build system to generate mirror | 
| 638 | tarballs. | 642 | tarballs. | 
| 639 | This technique is useful if you want to create a mirror server. | 643 | This technique is useful if you want to create a mirror server. | 
| 640 | If not, however, the technique can simply waste time during | 644 | If not, however, the technique can simply waste time during | 
| @@ -677,8 +681,8 @@ | |||
| 677 | <answer> | 681 | <answer> | 
| 678 | <para> | 682 | <para> | 
| 679 | Yes - you can easily do this. | 683 | Yes - you can easily do this. | 
| 680 | When you use BitBake to build an image, all the build output | 684 | When you use BitBake to build an image, all the build output | 
| 681 | goes into the directory created when you source the | 685 | goes into the directory created when you source the | 
| 682 | <link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link> | 686 | <link linkend='structure-core-script'><filename>&OE_INIT_FILE;</filename></link> | 
| 683 | setup script. | 687 | setup script. | 
| 684 | By default, this <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink> | 688 | By default, this <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink> | 
| @@ -687,10 +691,10 @@ | |||
| 687 | </para> | 691 | </para> | 
| 688 | 692 | ||
| 689 | <para> | 693 | <para> | 
| 690 | Within the Build Directory, is the <filename>tmp</filename> | 694 | Within the Build Directory, is the <filename>tmp</filename> | 
| 691 | directory. | 695 | directory. | 
| 692 | To remove all the build output yet preserve any source code or | 696 | To remove all the build output yet preserve any source code or | 
| 693 | downloaded files from previous builds, simply remove the | 697 | downloaded files from previous builds, simply remove the | 
| 694 | <filename>tmp</filename> directory. | 698 | <filename>tmp</filename> directory. | 
| 695 | </para> | 699 | </para> | 
| 696 | </answer> | 700 | </answer> | 
