diff options
| author | Scott Rifenbark <scott.m.rifenbark@intel.com> | 2014-03-20 17:52:28 -0600 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-03-25 12:29:44 +0000 |
| commit | 32890f29afd9bd93e22c325cdc24466982fb80a6 (patch) | |
| tree | e6e5318d5028db92ede8aaeee17e8b49d349a8fd /documentation/adt-manual | |
| parent | c441f5f005f306a3dfc203237aab42b4a37336b5 (diff) | |
| download | poky-32890f29afd9bd93e22c325cdc24466982fb80a6.tar.gz | |
adt-manual, ref-manual: Cross-toolchain details added. New class also.
In the adt-manual in the "Optionally Building a Toolchain Installer"
setion, I added some basic advantage information for building a
toolchain installer using bitbake image -c populate_sdk.
In the ref-manual, I added cross-referencing to this basic information
in several strategic areas: "SDK Generation", the populate_sdk class
reference section, the populate_sdk_* class reference section, and the
"Cross-Development Toolchain Generation" sections.
Finally, I also put in documentation for a new class called
autotools-brokensep.
(From yocto-docs rev: cde7dd2fbd7bdc0d71dc678ee7a5422459654287)
Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/adt-manual')
| -rw-r--r-- | documentation/adt-manual/adt-prepare.xml | 33 |
1 files changed, 29 insertions, 4 deletions
diff --git a/documentation/adt-manual/adt-prepare.xml b/documentation/adt-manual/adt-prepare.xml index 0dbbe4dcc8..bb35c28f25 100644 --- a/documentation/adt-manual/adt-prepare.xml +++ b/documentation/adt-manual/adt-prepare.xml | |||
| @@ -584,17 +584,42 @@ | |||
| 584 | you can build the toolchain installer one of two ways if you have a | 584 | you can build the toolchain installer one of two ways if you have a |
| 585 | <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>: | 585 | <ulink url='&YOCTO_DOCS_DEV_URL;#build-directory'>Build Directory</ulink>: |
| 586 | <itemizedlist> | 586 | <itemizedlist> |
| 587 | <listitem><para>Use <filename>bitbake meta-toolchain</filename>. | 587 | <listitem><para> |
| 588 | Use <filename>bitbake meta-toolchain</filename>. | ||
| 588 | This method requires you to still install the target | 589 | This method requires you to still install the target |
| 589 | sysroot by installing and extracting it separately. | 590 | sysroot by installing and extracting it separately. |
| 590 | For information on how to install the sysroot, see the | 591 | For information on how to install the sysroot, see the |
| 591 | "<link linkend='extracting-the-root-filesystem'>Extracting the Root Filesystem</link>" | 592 | "<link linkend='extracting-the-root-filesystem'>Extracting the Root Filesystem</link>" |
| 592 | section.</para></listitem> | 593 | section. |
| 593 | <listitem><para>Use | 594 | </para></listitem> |
| 594 | <filename>bitbake image -c populate_sdk</filename>. | 595 | <listitem><para> |
| 596 | Use <filename>bitbake image -c populate_sdk</filename>. | ||
| 595 | This method has significant advantages over the previous method | 597 | This method has significant advantages over the previous method |
| 596 | because it results in a toolchain installer that contains the | 598 | because it results in a toolchain installer that contains the |
| 597 | sysroot that matches your target root filesystem. | 599 | sysroot that matches your target root filesystem. |
| 600 | </para> | ||
| 601 | |||
| 602 | <para>Another powerful feature is that the toolchain is | ||
| 603 | completely self-contained. | ||
| 604 | The binaries are linked against their own copy of | ||
| 605 | <filename>libc</filename>, which results in no dependencies | ||
| 606 | on the target system. | ||
| 607 | To achieve this, the pointer to the dynamic loader is | ||
| 608 | configured at install time since that path cannot be dynamically | ||
| 609 | altered. | ||
| 610 | This is the reason for a wrapper around the | ||
| 611 | <filename>populate_sdk</filename> archive.</para> | ||
| 612 | |||
| 613 | <para>Another feature is that only one set of cross-canadian | ||
| 614 | toolchain binaries are produced per architecture. | ||
| 615 | This feature takes advantage of the fact that the target | ||
| 616 | hardware can be passed to <filename>gcc</filename> as a set of | ||
| 617 | compiler options. | ||
| 618 | Those options are set up by the environment script and | ||
| 619 | contained in variables like CC and LD. | ||
| 620 | This reduces the space needed for the tools. | ||
| 621 | Understand, however, that a sysroot is still needed for every | ||
| 622 | target since those binaries are target-specific. | ||
| 598 | </para></listitem> | 623 | </para></listitem> |
| 599 | </itemizedlist> | 624 | </itemizedlist> |
| 600 | </para> | 625 | </para> |
