aboutsummaryrefslogtreecommitdiffstats
path: root/documentation/dev-manual/dev-manual-newbie.xml
diff options
context:
space:
mode:
authorScott Rifenbark <scott.m.rifenbark@intel.com>2013-06-14 17:07:57 +0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-06-21 14:26:30 +0100
commit26a9dd8c29102863a79333c76b2b9507bada89e8 (patch)
tree63f8fabb2ff01cd50e0cd4dfa37d674c34722eeb /documentation/dev-manual/dev-manual-newbie.xml
parenta4218c821f965e101c343cc420e5e0ba0df7ec7f (diff)
downloadopenembedded-core-contrib-26a9dd8c29102863a79333c76b2b9507bada89e8.tar.gz
dev-manual: Updates to the "Cross-Development Toolchain" term.
This term description has been reduced to an introduction only. The real details are now in the ref-manual. This term now simply is introduced and the reader is referred to the ref-manual section. (From yocto-docs rev: 4d53a25e1871d793d5c38eba4d1f8715c989cb4d) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/dev-manual/dev-manual-newbie.xml')
-rw-r--r--documentation/dev-manual/dev-manual-newbie.xml115
1 files changed, 25 insertions, 90 deletions
diff --git a/documentation/dev-manual/dev-manual-newbie.xml b/documentation/dev-manual/dev-manual-newbie.xml
index 4b11f403b0..0c849f59d3 100644
--- a/documentation/dev-manual/dev-manual-newbie.xml
+++ b/documentation/dev-manual/dev-manual-newbie.xml
@@ -566,105 +566,40 @@
</para></listitem>
<listitem><para id='cross-development-toolchain'>
<emphasis>Cross-Development Toolchain:</emphasis>
- In general, a cross-development toolchain is a collection of
- software development tools and utilities that run on one
- architecture and allow you to develop software for a
- different, or targeted, architecture.
- This toolchain contains cross-compilers, linkers, and debuggers
- that are specific to the target architecture.
- Sometimes this toolchain is referred to as the
- meta-toolchain.</para>
- <para>
+ In general, a cross-development toolchain is a collection of
+ software development tools and utilities that run on one
+ architecture and allow you to develop software for a
+ different, or targeted, architecture.
+ These toolchains contain cross-compilers, linkers, and
+ debuggers that are specific to the target architecture.
+ </para>
+
<para>The Yocto Project supports two different cross-development
toolchains:
<itemizedlist>
<listitem><para>A toolchain only used by and within
BitBake when building an image for a target
architecture.</para></listitem>
- <listitem><para>A toolchain used outside of BitBake
- by developers when developing applications that
- will run on a targeted device.
+ <listitem><para>A relocatable toolchain used outside of
+ BitBake by developers when developing applications
+ that will run on a targeted device.
+ Sometimes this relocatable cross-development
+ toolchain is referred to as the meta-toolchain.
</para></listitem>
</itemizedlist>
</para>
- <para>You can use the OpenEmbedded build system to build an
- installer for the toolchain used to develop applications.
- When you run the installer, it installs the toolchain,
- which contains the development tools you need to cross-compile
- and test your software.
- If your target architecture is supported by the Yocto Project,
- you can take advantage of pre-built images that ship with the
- Yocto Project and already contain cross-development toolchain
- installers.
- </para>
- <para>Following are some toolchain recipes with brief
- descriptions of each:
- <itemizedlist>
- <listitem><para><filename>gcc-cross-initial</filename>:
- An early stage of the bootstrap process for creating
- the cross-compiler used within BitBake.
- This stage builds enough of the
- <filename>gcc-cross</filename>,
- the C library, and other pieces needed to
- finish building the final cross-compiler in later
- stages.
- This tool is a "native" package (i.e. it is
- designed to run on the build host).
- </para></listitem>
- <listitem><para><filename>gcc-cross</filename>:
- The final stage of the bootstrap process for creating
- the cross-compiler used within BitBake.
- This stage results in the actual cross-compiler that
- BitBake uses when it builds an image for a targeted
- device.
- <note>
- If you are replacing this cross compiler toolchain
- with a custom version, you must replace
- <filename>gcc-cross</filename>.
- </note>
- This tool is also a "native" package (i.e. it is
- designed to run on the build host).
- </para></listitem>
- <listitem><para><filename>gcc-runtime</filename>:
- Runtime libraries from the toolchain bootstrapping
- process.
- This tool produces a binary that consists of the
- runtime libraries need for the targeted device.
- </para></listitem>
- <listitem><para><filename>gcc-crosssdk-initial</filename>:
- An early stage of the bootstrap process for creating
- the cross-compiler that is external to BitBake
- (i.e. the compiler used by application developers
- to develop software that runs on the target device).
- This stage builds enough of the
- <filename>gcc-crosssdk</filename> and supporting
- pieces so that the final stage of the bootstrap
- process can produce the finished cross-compiler.
- This tool is a "native" binary that runs on the build
- host.
- </para></listitem>
- <listitem><para><filename>gcc-crosssdk</filename>:
- The final stage of the bootstrap process for creating
- the cross-compiler that is external to BitBake.
- This tool is a "native" binary that runs on the build
- host but generates code that runs on the machine used
- for application development (i.e. the
- <filename>SDKMACHINE</filename>).
- Often the <filename>SDKMACHINE</filename> is not the
- same machine as the host build machine.
- </para></listitem>
- <listitem><para><filename>gcc-cross-canadian</filename>:
- A compiler built on one machine (build machine) that
- runs on a different machine (host machine) and produces
- software that runs on a third target machine.
- See WikipediA's
- <ulink url='http://en.wikipedia.org/wiki/Cross_compiler#Canadian_Cross'>Cross Compiler</ulink>
- page for a more general explanation of a
- "Canadian Cross".
- This compiler is included with the SDK that builds
- software for the eventual target.
- This tool is a "nativesdk" package.</para></listitem>
- </itemizedlist></para></listitem>
+
+ <para>
+ Creation of these toolchains is simple and automated.
+ For information on toolchain concepts as they apply to the
+ Yocto Project, see the
+ "<ulink url='&YOCTO_DOCS_REF_URL;#cross-development-toolchain-generation'>Cross-Development Toolchain Generation</ulink>"
+ section in the Yocto Project Reference Manual.
+ You can also find more information on using the
+ relocatable toolchain in the
+ <ulink url='&YOCTO_DOCS_ADT_URL;'>Yocto Project
+ Application Developer's Guide</ulink>.
+ </para></listitem>
<listitem><para><emphasis>Image:</emphasis> An image is the result produced when
BitBake processes a given collection of recipes and related Metadata.
Images are the binary output that run on specific hardware or QEMU