ref-manual: add description for the "sysroot" term

This term is used throughout the manual but is not properly
introduced anywhere.

(From yocto-docs rev: 51426a0762a5988aa835e065f5258fd7ac474c52)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Michael Opdenacker
2022-06-13 17:58:07 +02:00
committed by Richard Purdie
parent 8a5caba863
commit 50acfba977

View File

@@ -383,6 +383,31 @@ universal, the list includes them just in case:
":ref:`overview-manual/development-environment:repositories, tags, and branches`"
section in the Yocto Project Overview and Concepts Manual.
:term:`Sysroot`
When cross-compiling, the target file system may be differently laid
out and contain different things compared to the host system. The concept
of a *sysroot* is directory which looks like the target filesystem and
can be used to cross-compile against.
In the context of cross-compiling toolchains, a *sysroot*
typically contains C library and kernel headers, plus the
compiled binaries for the C library. A *multilib toolchain*
can contain multiple variants of the C library binaries,
each compiled for a target instruction set (such as ``armv5``,
``armv7`` and ``armv8``), and possibly optimized for a specific CPU core.
In the more specific context of the OpenEmbedded build System and
of the Yocto Project, each recipe has two sysroots:
- A *target sysroot* contains all the **target** libraries and headers
needed to build the recipe.
- A *native sysroot* contains all the **host** files and executables
needed to build the recipe.
See the :term:`SYSROOT_* <SYSROOT_DESTDIR>` variables controlling
how sysroots are created and stored.
:term:`Task`
A per-recipe unit of execution for BitBake (e.g.
:ref:`ref-tasks-compile`,