mirror of
https://git.yoctoproject.org/poky
synced 2026-06-02 01:19:52 +00:00
overview-manual-concepts: Fix the compiler bootstrap process
gcc-cross-initial and glibc-inital were removed a while ago and this flow is incorrect anyway. Fix it to match what happens (adding libgcc and libgcc-initial which are now important in this context). (From yocto-docs rev: 047bff2b79c7742abc19d549b78c175dd3b5a8f5) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -1515,27 +1515,24 @@ cross-compiler that is used internally within BitBake only.
|
|||||||
gcc-cross
|
gcc-cross
|
||||||
.
|
.
|
||||||
|
|
||||||
The chain of events that occurs when ``gcc-cross`` is bootstrapped is as
|
The chain of events that occurs when the standard toolchain is bootstrapped:
|
||||||
follows:
|
|
||||||
::
|
::
|
||||||
|
|
||||||
gcc -> binutils-cross -> gcc-cross-initial -> linux-libc-headers -> glibc-initial -> glibc -> gcc-cross -> gcc-runtime
|
binutils-cross -> linux-libc-headers -> gcc-cross -> libgcc-initial -> glibc -> libgcc -> gcc-runtime
|
||||||
|
|
||||||
- ``gcc``: The build host's GNU Compiler Collection (GCC).
|
- ``gcc``: The compiler, GNU Compiler Collection (GCC).
|
||||||
|
|
||||||
- ``binutils-cross``: The bare minimum binary utilities needed in order
|
- ``binutils-cross``: The binary utilities needed in order
|
||||||
to run the ``gcc-cross-initial`` phase of the bootstrap operation.
|
to run the ``gcc-cross`` phase of the bootstrap operation and build the
|
||||||
|
headers for the C library.
|
||||||
|
|
||||||
- ``gcc-cross-initial``: An early stage of the bootstrap process for
|
- ``linux-libc-headers``: Headers needed for the cross-compiler and C library build.
|
||||||
creating the cross-compiler. This stage builds enough of the
|
|
||||||
``gcc-cross``, 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).
|
|
||||||
|
|
||||||
- ``linux-libc-headers``: Headers needed for the cross-compiler.
|
- ``libgcc-initial``: An initial version of the gcc support library needed
|
||||||
|
to bootstrap ``glibc``.
|
||||||
|
|
||||||
- ``glibc-initial``: An initial version of the Embedded GNU C Library
|
- ``libgcc``: The final version of the gcc support library which
|
||||||
(GLIBC) needed to bootstrap ``glibc``.
|
can only be built once there is a C library to link against.
|
||||||
|
|
||||||
- ``glibc``: The GNU C Library.
|
- ``glibc``: The GNU C Library.
|
||||||
|
|
||||||
@@ -1543,14 +1540,7 @@ follows:
|
|||||||
cross-compiler. This stage results in the actual cross-compiler that
|
cross-compiler. This stage results in the actual cross-compiler that
|
||||||
BitBake uses when it builds an image for a targeted device.
|
BitBake uses when it builds an image for a targeted device.
|
||||||
|
|
||||||
.. note::
|
This tool is a "native" tool (i.e. it is designed to run on
|
||||||
|
|
||||||
If you are replacing this cross compiler toolchain with a custom
|
|
||||||
version, you must replace
|
|
||||||
gcc-cross
|
|
||||||
.
|
|
||||||
|
|
||||||
This tool is also a "native" package (i.e. it is designed to run on
|
|
||||||
the build host).
|
the build host).
|
||||||
|
|
||||||
- ``gcc-runtime``: Runtime libraries resulting from the toolchain
|
- ``gcc-runtime``: Runtime libraries resulting from the toolchain
|
||||||
|
|||||||
Reference in New Issue
Block a user