Merge upstream

This commit is contained in:
Thomas Trepl (Moody) 2021-09-20 09:37:34 +02:00
commit 716db1f765
127 changed files with 769 additions and 668 deletions

View File

@ -2557,7 +2557,6 @@
</seglistitem>
</segmentedlist>
<segmentedlist id="python-testdeps">
<segtitle>&testsuites;</segtitle>
<seglistitem>

View File

@ -636,7 +636,6 @@ n/a - August 4, 2004
to allow permissions to be set at install. (DJ)
n/a - July 31, 2004
* Moved PIDFILE check to getpids and removed arguments from
killproc and reloadproc. Signals are now set at beginning of
funtcions script with KILLDELAY. (DJ)

View File

@ -38,13 +38,13 @@
<itemizedlist>
<listitem>
<para>
The version of the book being used (in this case
<para>The version of the book being used (in this case
<phrase revision="sysv">&version;</phrase>
<phrase revision="systemd">&versiond;</phrase>)
<phrase arch="default" revision="sysv">&version;</phrase>
<phrase arch="ml_32,ml_x32,ml_all" revision="sysv">&version;-multilib</phrase>
<phrase arch="default" revision="systemd">&versiond;</phrase>
<phrase arch="ml_32,ml_x32,ml_all" revision="systemd">&versiond;-multilib</phrase>)
</para>
<phrase arch="ml_32,ml_x32,ml_all" revision="systemd">&versiond;-multilib</phrase>)</para>
</listitem>
<listitem>
<para>The host distribution and version being used to create LFS</para>

View File

@ -44,6 +44,71 @@
<listitem revision="sysv"> or <listitem revision="systemd"> as
appropriate for the entry or if needed the entire day's listitem.
-->
<listitem>
<para>2021-09-15</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Ensure tcl documentation instructions are present. Fixes
<ulink url="&lfs-ticket-root;4923">#4923</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to Python3-3.9.7. Fixes
<ulink url="&lfs-ticket-root;4916">#4916</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to linux-5.14.3. Fixes
<ulink url="&lfs-ticket-root;4913">#4913</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to libcap-2.57. Fixes
<ulink url="&lfs-ticket-root;4912">#4912</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to iproute2-5.14.0. Fixes
<ulink url="&lfs-ticket-root;4917">#4917</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to inetutils-2.2. Fixes
<ulink url="&lfs-ticket-root;4918">#4918</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to gzip-1.11. Fixes
<ulink url="&lfs-ticket-root;4920">#4920</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to gdbm-1.21. Fixes
<ulink url="&lfs-ticket-root;4919">#4919</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to bison-3.8.1. Fixes
<ulink url="&lfs-ticket-root;4921">#4921</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Update to bc-5.0.2. Fixes
<ulink url="&lfs-ticket-root;4908">#4905</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>2021-09-08</para>
<itemizedlist>
<listitem>
<para>[renodr] - Fix regressions in File that result in improper
detection of text and XZ files.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>2021-09-06</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Text clarifications in the backup/restore section
of Chapter 7. Thanks to Kevin Buckley for the patch.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>2021-09-01</para>

View File

@ -45,15 +45,15 @@
<!--<listitem>
<para>Bash &bash-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>Bc &bc-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>Binutils-&binutils-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>Bison-&bison-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>Bzip2-&bzip2-version;</para>
</listitem>-->
@ -99,9 +99,9 @@
<!--<listitem>
<para>GCC-&gcc-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>GDBM-&gdbm-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>Gettext-&gettext-version;</para>
</listitem>-->
@ -123,21 +123,21 @@
<!--<listitem>
<para>GRUB-&grub-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>Gzip-&gzip-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>IANA-Etc-&iana-etc-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>Inetutils-&inetutils-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>Intltool-&intltool-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>IPRoute2-&iproute2-version;</para>
</listitem>-->
</listitem>
<!--<listitem revision="systemd">
<para>Jinja2-&jinja2-version;</para>
</listitem>-->
@ -153,9 +153,9 @@
<!--<listitem>
<para>LFS-Bootscripts-&lfs-bootscripts-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>Libcap-&libcap-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>Libelf-&elfutils-version; (from elfutils)</para>
</listitem>-->
@ -168,9 +168,9 @@
<!--<listitem>
<para>Libtool-&libtool-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>Linux-&linux-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>M4-&m4-version;</para>
</listitem>-->
@ -219,9 +219,9 @@
<!--<listitem>
<para>Psmisc-&psmisc-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>Python-&python-version;</para>
</listitem>-->
</listitem>
<!--<listitem>
<para>Readline-&readline-version;</para>
</listitem>-->
@ -284,6 +284,9 @@
<itemizedlist>
<title>Added:</title>
<listitem><para></para></listitem> <!-- satisfy build -->
<listitem>
<para>file-5.40-upstream_fixes-1.patch</para>
</listitem>
<!--
<listitem>
<para>binutils-2.37-upstream_fix-1.patch</para>

View File

@ -74,6 +74,14 @@
<screen role="nodump"><userinput>wget --input-file=wget-list --continue --directory-prefix=$LFS/sources</userinput></screen>
<note><para>
The <filename>wget-list</filename> file mentioned above retrieves all
packages for both the sysV and systemd versions of LFS. There are a total
of five additional small packages not needed for the currrent book. The
<filename>md5sums</filename> file mentioned below is specific to the
current book.
</para></note>
<para>Additionally, starting with LFS-7.0, there is a separate file,
<ulink url="../md5sums">md5sums</ulink>, which can be used to verify that all
the correct packages are available before proceeding. Place that file in

View File

@ -60,6 +60,14 @@
</listitem>
</varlistentry>
<varlistentry>
<term>File Upstream Fixes Patch - <token>&file-upstream-fixes-patch-size;</token>:</term>
<listitem>
<para>Download: <ulink url="&patches-root;&file-upstream-fixes-patch;"/></para>
<para>MD5 sum: <literal>&file-upstream-fixes-md5;</literal></para>
</listitem>
</varlistentry>
<varlistentry>
<term>Glibc FHS Patch - <token>&glibc-fhs-patch-size;</token>:</term>
<listitem>

View File

@ -20,7 +20,7 @@
<para>Second, the libtool .la files are only useful when linking with static
libraries. They are unneeded and potentially harmful when using dynamic
shared libraries, specially when using non-autotools build systems.
shared libraries, especially when using non-autotools build systems.
While still in chroot, remove those files now:</para>
<screen><userinput>find /usr/{lib,libexec} -name \*.la -delete</userinput><userinput arch="ml_32">
@ -40,6 +40,17 @@ find /usr/lib{,x}32 -name \*.la -delete</userinput></screen>
<sect2>
<title>Backup</title>
<para>
At this point the essential programs and libraries have been created
and your current LFS system is in a good state. Your system can now be
backed up for later reuse. In case of fatal failures in the subsequent
chapters, it often turns out that removing everything and starting over
(more carefully) is the best option to recover. Unfortunately, all the
temporary files will be removed, too. To avoid spending extra time to
redo something which has been built successfully, creating a backup of
the current LFS system may prove useful.
</para>
<note><para>
All the remaining steps in this section are optional. Nevertheless,
as soon as you begin installing packages in <xref
@ -59,47 +70,54 @@ find /usr/lib{,x}32 -name \*.la -delete</userinput></screen>
safety reasons.
</para>
<important>
<para>All of the following instructions are executed by
<systemitem class="username">root</systemitem>. Take extra
care about the commands you're going to run as mistakes
here can modify your host system. Be aware that the
environment variable <envar>LFS</envar>
is set for user <systemitem class="username">lfs</systemitem> by default
but may <emphasis>not</emphasis> be set for
<systemitem class="username">root</systemitem>. Whenever
commands are to be executed by <systemitem class="username">root</systemitem>,
make sure you have set <envar>LFS</envar>.
This has been discussed in <xref linkend='ch-partitioning-aboutlfs'/>.
</para>
</important>
<para>
Now, if you are making a backup, leave the chroot environment:
If you have decided to make a backup, leave the chroot environment:
</para>
<screen role="nodump"><userinput>exit</userinput></screen>
<important>
<para>
At this point the essential programs and libraries have been created
and your current system is in a good state. Your system can now be
backed up for later reuse. In case of fatal failures in the subsequent
chapters, it often turns out that removing everything and starting over
(more carefully) is the best option to recover. Unfortunately, all the
temporary files will be removed, too. To avoid spending extra time to
redo something which has been built successfully, prepare a backup.
All of the following instructions are executed by
<systemitem class="username">root</systemitem> on your host system.
Take extra care about the commands you're going to run as mistakes
here can modify your host system. Be aware that the
environment variable <envar>LFS</envar>
is set for user <systemitem class="username">lfs</systemitem> by default
but may <emphasis>not</emphasis> be set for
<systemitem class="username">root</systemitem>.
</para>
<para>
Whenever commands are to be executed by <systemitem class="username">root</systemitem>,
make sure you have set <envar>LFS</envar>.
</para>
<para>
This has been discussed in <xref linkend='ch-partitioning-aboutlfs'/>.
</para>
</important>
<para>Before making a backup, unmount the virtual file systems:</para>
<screen role="nodump"><userinput>umount $LFS/dev/pts
umount $LFS/{sys,proc,run,dev}</userinput></screen>
<para>
Make sure you have at least 1 GB free disk space (the source tarballs
will be included in the backup archive) in the home directory of user
<systemitem class="username">root</systemitem>.
will be included in the backup archive) on the filesystem containing
directory where you create the backup archive.
</para>
<para>Before we make a backup, unmount the virtual file systems:</para>
<para>
Note that the instructions below specify the home directory of the host
system's <systemitem class="username">root</systemitem> user, which is
typically found on the root filesystem.
</para>
<screen role="nodump"><userinput>umount $LFS/dev{/pts,}
umount $LFS/{sys,proc,run}</userinput></screen>
<para>
Replace <envar>$HOME</envar> by a directory of your choice if you
do not want to have the backup stored in <systemitem
class="username">root</systemitem>'s home directory.
</para>
<para>
Create the backup archive by running the following command:
@ -110,11 +128,6 @@ umount $LFS/{sys,proc,run}</userinput></screen>
Because the backup archive is compressed, it takes a relatively
long time (over 10 minutes) even on a resonably fast system.
</para>
<para>
Also, ensure the <envar>LFS</envar> environment variable is set
for the root user.
</para>
</note>
<screen role="nodump" revision="sysv"><userinput>cd $LFS
@ -123,11 +136,6 @@ tar -cJpf $HOME/lfs-temp-tools-&version;.tar.xz .</userinput></screen>
<screen role="nodump" revision="systemd"><userinput>cd $LFS
tar -cJpf $HOME/lfs-temp-tools-&versiond;.tar.xz .</userinput></screen>
<para>
Replace <envar>$HOME</envar> by a directory of your choice if you
do not want to have the backup stored in <systemitem
class="username">root</systemitem>'s home directory.
</para>
</sect2>
<sect2>

View File

@ -11,11 +11,10 @@
<title>Introduction</title>
<para>This chapter shows how to build the last missing bits of the temporary
system: the tools needed by the build machinery of various packages.
Now that all circular dependencies
have been resolved, we can use a <quote>chroot</quote> environment,
completely isolated the host operating system used for the build, except
for the running kernel.</para>
system: the tools needed by the build machinery of various packages. Now
that all circular dependencies have been resolved, a <quote>chroot</quote>
environment, completely isolated from the host operating system (except for
the running kernel), can be used for the build.</para>
<para>For proper operation of the isolated environment, some communication
with the running kernel must be established. This is done through the

View File

@ -41,6 +41,10 @@
<sect2 role="installation">
<title>Installation of File</title>
<para>First, fix a few regressions in File:</para>
<screen><userinput remap="pre">patch -Np1 -i ../file-&file-version;-upstream_fixes-1.patch</userinput></screen>
<para>Prepare File for compilation:</para>
<screen><userinput remap="configure">./configure --prefix=/usr</userinput></screen>

View File

@ -1106,7 +1106,6 @@ readelf -l a.out | grep '/ld-linux-x32'</userinput></screen>
code for <quote>standard</quote> functions used in
many different Unix utilities. These functions are now in
<filename class="libraryfile">libc</filename></para>
<indexterm zone="ch-system-glibc libutil">
<primary sortas="c-libutil">libutil</primary>
</indexterm>

View File

@ -111,7 +111,7 @@
(replace <replaceable>libfoo</replaceable> with the name of the
library):</para>
<screen><userinput role="nodump">grep -l -e '<replaceable>libfoo</replaceable>.*deleted' /proc/*/maps |
<screen role="nodump"><userinput>grep -l -e '<replaceable>libfoo</replaceable>.*deleted' /proc/*/maps |
tr -cd 0-9\\n | xargs -r ps u</userinput></screen>
<para>

View File

@ -140,10 +140,16 @@ unset SRCDIR</userinput></screen>
<screen><userinput remap="install">ln -sfv tclsh&tcl-major-version; /usr/bin/tclsh</userinput></screen>
<para>Finally, rename a man page that conflicts with a Perl man page:</para>
<para>Rename a man page that conflicts with a Perl man page:</para>
<screen><userinput remap="install">mv /usr/share/man/man3/{Thread,Tcl_Thread}.3</userinput></screen>
<para>If you downloaded the optional documentation, install it by issuing
the following commands:</para>
<screen><userinput remap="install">mkdir -v -p /usr/share/doc/tcl-&tcl-version;
cp -v -r ../html/* /usr/share/doc/tcl-&tcl-version;</userinput></screen>
</sect2>
<sect2 id="contents-tcl" role="content">

View File

@ -97,7 +97,6 @@
<ulink url="http://www.kroah.com/lkn/"/> </para>
<note>
<para>A good starting place for setting up the kernel configuration is to
run <command>make defconfig</command>. This will set the base
configuration to a good state that takes your current system architecture

View File

@ -58,10 +58,10 @@
<!ENTITY bash-fin-du "50 MB">
<!ENTITY bash-fin-sbu "1.6 SBU">
<!ENTITY bc-version "5.0.0">
<!ENTITY bc-version "5.0.2">
<!ENTITY bc-size "420 KB">
<!ENTITY bc-url "https://github.com/gavinhoward/bc/releases/download/&bc-version;/bc-&bc-version;.tar.xz">
<!ENTITY bc-md5 "8345bb81c576ddfc8c27e0842370603c">
<!ENTITY bc-md5 "3b521d29aa4af4c4d5e96f7c3db3c607">
<!ENTITY bc-home "https://git.yzena.com/gavin/bc">
<!ENTITY bc-fin-du "6.7 MB">
<!ENTITY bc-fin-sbu "less than 0.1 SBU">
@ -78,10 +78,10 @@
<!ENTITY binutils-fin-du "4.5 GB">
<!ENTITY binutils-fin-sbu "6.3 SBU">
<!ENTITY bison-version "3.7.6">
<!ENTITY bison-size "2,566 KB">
<!ENTITY bison-version "3.8.1">
<!ENTITY bison-size "2,735 KB">
<!ENTITY bison-url "&gnu;bison/bison-&bison-version;.tar.xz">
<!ENTITY bison-md5 "d61aa92e3562cb7292b004ce96173cf7">
<!ENTITY bison-md5 "0ea56629a7136cc097668dba808afe3a">
<!ENTITY bison-home "&gnu-software;bison/">
<!ENTITY bison-tmp-du "50 MB">
<!ENTITY bison-tmp-sbu "0.3 SBU">
@ -240,10 +240,10 @@
<!ENTITY libstdcpp-tmpp2-du "1.1 GB">
<!ENTITY libstdcpp-tmpp2-sbu "0.8 SBU">
<!ENTITY gdbm-version "1.20">
<!ENTITY gdbm-size "965 KB">
<!ENTITY gdbm-version "1.21">
<!ENTITY gdbm-size "983 KB">
<!ENTITY gdbm-url "&gnu;gdbm/gdbm-&gdbm-version;.tar.gz">
<!ENTITY gdbm-md5 "006c19b8b60828fd6916a16f3496bd3c">
<!ENTITY gdbm-md5 "a285c6e2dfed78668664c0555a7d202b">
<!ENTITY gdbm-home "&gnu-software;gdbm/">
<!ENTITY gdbm-fin-du "11 MB">
<!ENTITY gdbm-fin-sbu "0.1 SBU">
@ -311,10 +311,10 @@
<!ENTITY grub-fin-du "158 MB">
<!ENTITY grub-fin-sbu "0.8 SBU">
<!ENTITY gzip-version "1.10">
<!ENTITY gzip-size "757 KB">
<!ENTITY gzip-version "1.11">
<!ENTITY gzip-size "786 KB">
<!ENTITY gzip-url "&gnu;gzip/gzip-&gzip-version;.tar.xz">
<!ENTITY gzip-md5 "691b1221694c3394f1c537df4eee39d3">
<!ENTITY gzip-md5 "d1e93996dba00cab0caa7903cd01d454">
<!ENTITY gzip-home "&gnu-software;gzip/">
<!ENTITY gzip-tmp-du "10 MB">
<!ENTITY gzip-tmp-sbu "0.1 SBU">
@ -329,10 +329,10 @@
<!ENTITY iana-etc-fin-du "4.7 MB">
<!ENTITY iana-etc-fin-sbu "less than 0.1 SBU">
<!ENTITY inetutils-version "2.1">
<!ENTITY inetutils-size "1,496 KB">
<!ENTITY inetutils-version "2.2">
<!ENTITY inetutils-size "1,494 KB">
<!ENTITY inetutils-url "&gnu;inetutils/inetutils-&inetutils-version;.tar.xz">
<!ENTITY inetutils-md5 "4e7676d1980e57c7df665e5c5c3c1047">
<!ENTITY inetutils-md5 "de8c1b49cbde2b30e481c61c65357ad4">
<!ENTITY inetutils-sha256 "01b9a4bc73a47e63f6e8a07b76122d9ad2a2e46ebf14870e9c91d660b5647a22">
<!ENTITY inetutils-home "&gnu-software;inetutils/">
<!ENTITY inetutils-fin-du "30 MB">
@ -346,10 +346,10 @@
<!ENTITY intltool-fin-du "1.5 MB">
<!ENTITY intltool-fin-sbu "less than 0.1 SBU">
<!ENTITY iproute2-version "5.13.0">
<!ENTITY iproute2-size "828 KB">
<!ENTITY iproute2-version "5.14.0">
<!ENTITY iproute2-size "834 KB">
<!ENTITY iproute2-url "&kernel;linux/utils/net/iproute2/iproute2-&iproute2-version;.tar.xz">
<!ENTITY iproute2-md5 "15fc3786303a173a14e180afe4cd2ecd">
<!ENTITY iproute2-md5 "da53966eb3b08ac264f3e9df02e06bfa">
<!ENTITY iproute2-home "&kernel;linux/utils/net/iproute2/">
<!ENTITY iproute2-fin-du "15 MB">
<!ENTITY iproute2-fin-sbu "0.2 SBU">
@ -402,10 +402,10 @@
<!ENTITY lfs-bootscripts-cfg-du "BOOTSCRIPTS-INSTALL-KB KB">
<!ENTITY lfs-bootscripts-cfg-sbu "less than 0.1 SBU">
<!ENTITY libcap-version "2.53">
<!ENTITY libcap-size "153 KB">
<!ENTITY libcap-version "2.57">
<!ENTITY libcap-size "164 KB">
<!ENTITY libcap-url "&kernel;linux/libs/security/linux-privs/libcap2/libcap-&libcap-version;.tar.xz">
<!ENTITY libcap-md5 "094994d4554c6689cf98ae4f717b8e19">
<!ENTITY libcap-md5 "e84ce311ec412cbe8340ea8ea31525d9">
<!ENTITY libcap-home "https://sites.google.com/site/fullycapable/">
<!ENTITY libcap-fin-du "3.2 MB">
<!ENTITY libcap-fin-sbu "less than 0.1 SBU">
@ -435,13 +435,13 @@
<!ENTITY libtool-fin-sbu "1.5 SBU">
<!ENTITY linux-major-version "5">
<!ENTITY linux-minor-version "13">
<!ENTITY linux-patch-version "12">
<!ENTITY linux-minor-version "14">
<!ENTITY linux-patch-version "3">
<!--<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;">-->
<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;.&linux-patch-version;">
<!ENTITY linux-size "116,545 KB">
<!ENTITY linux-size "117,839 KB">
<!ENTITY linux-url "&kernel;linux/kernel/v&linux-major-version;.x/linux-&linux-version;.tar.xz">
<!ENTITY linux-md5 "6e1728b2021ca19cc9273f080e6c44c7">
<!ENTITY linux-md5 "b45b18effd1af9077de47f4bc496d2ab">
<!ENTITY linux-home "https://www.kernel.org/">
<!-- measured for 5.13.4 / gcc-11.1.0 on x86_64 : minimum is
allnoconfig rounded down to allow for ongoing cleanups,
@ -600,19 +600,19 @@
<!-- If python minor version changes, updates in python and
meson pages will be needed: python3.6 and python3.6m -->
<!ENTITY python-version "3.9.6">
<!ENTITY python-version "3.9.7">
<!ENTITY python-minor "3.9">
<!ENTITY python-size "18,608 KB">
<!ENTITY python-size "18,676 KB">
<!ENTITY python-url "https://www.python.org/ftp/python/&python-version;/Python-&python-version;.tar.xz">
<!ENTITY python-md5 "ecc29a7688f86e550d29dba2ee66cf80">
<!ENTITY python-md5 "fddb060b483bc01850a3f412eea1d954">
<!ENTITY python-home "https://www.python.org/">
<!ENTITY python-tmp-du "347 MB">
<!ENTITY python-tmp-sbu "1.2 SBU">
<!ENTITY python-fin-du "260 MB">
<!ENTITY python-fin-sbu "4.4 SBU">
<!ENTITY python-docs-url "https://www.python.org/ftp/python/doc/&python-version;/python-&python-version;-docs-html.tar.bz2">
<!ENTITY python-docs-md5 "0dae29e4c38af1b6b1a86b35c9e48923">
<!ENTITY python-docs-size "6,692 KB">
<!ENTITY python-docs-md5 "ef3ea6141ed362e4d12467b136ee70fe">
<!ENTITY python-docs-size "6,791 KB">
<!ENTITY readline-version "8.1">
<!ENTITY readline-size "2,924 KB">

View File

@ -38,9 +38,9 @@
<title>About Cross-Compilation</title>
<para>Cross-compilation involves some concepts that deserve a section on
their own. Although this section may be omitted in a first reading, it
is strongly suggested to come back to it later in order to get a full
grasp of the build process.</para>
their own. Although this section may be omitted in a first reading,
coming back to it later will be beneficial to your full understanding of
the process.</para>
<para>Let us first define some terms used in this context:</para>
@ -67,7 +67,7 @@
<para>As an example, let us imagine the following scenario (sometimes
referred to as <quote>Canadian Cross</quote>): we may have a
compiler on a slow machine only, let's call the machine A, and the compiler
compiler on a slow machine only, let's call it machine A, and the compiler
ccA. We may have also a fast machine (B), but with no compiler, and we may
want to produce code for another slow machine (C). To build a
compiler for machine C, we would have three stages:</para>
@ -141,7 +141,7 @@
cpu-vendor-kernel-os referred to as the machine triplet. An astute
reader may wonder why a <quote>triplet</quote> refers to a four component
name. The reason is history: initially, three component names were enough
to designate unambiguously a machine, but with new machines and systems
to designate a machine unambiguously, but with new machines and systems
appearing, that proved insufficient. The word <quote>triplet</quote>
remained. A simple way to determine your machine triplet is to run
the <command>config.guess</command>
@ -156,9 +156,9 @@
linker <command>ld</command> that is part of binutils). The dynamic linker
provided by Glibc finds and loads the shared libraries needed by a
program, prepares the program to run, and then runs it. The name of the
dynamic linker for a 32-bit Intel machine will be <filename
class="libraryfile">ld-linux.so.2</filename> (<filename
class="libraryfile">ld-linux-x86-64.so.2</filename> for 64-bit systems). A
dynamic linker for a 32-bit Intel machine is <filename
class="libraryfile">ld-linux.so.2</filename> and is<filename
class="libraryfile">ld-linux-x86-64.so.2</filename> for 64-bit systems. A
sure-fire way to determine the name of the dynamic linker is to inspect a
random binary from the host system by running: <userinput>readelf -l
&lt;name of binary&gt; | grep interpreter</userinput> and noting the
@ -167,7 +167,7 @@
tree.</para>
</note>
<para>In order to fake a cross compilation, the name of the host triplet
<para>In order to fake a cross compilation in LFS, the name of the host triplet
is slightly adjusted by changing the &quot;vendor&quot; field in the
<envar>LFS_TGT</envar> variable. We also use the
<parameter>--with-sysroot</parameter> option when building the cross linker and
@ -295,7 +295,7 @@ checking what linker to use... /mnt/lfs/tools/i686-lfs-linux-gnu/bin/ld</compute
always use the compiler relating to the <parameter>--host</parameter>
parameter passed to its configure script; e.g. in our case, the compiler
will be <command>$LFS_TGT-gcc</command>. The binary tools and kernel
headers can be a bit more complicated. Therefore, take no risks and use
headers can be a bit more complicated. Therefore, we take no risks and use
the available configure switches to enforce the correct selections. After
the run of <command>configure</command>, check the contents of the
<filename>config.make</filename> file in the <filename

View File

@ -30,6 +30,10 @@
<!ENTITY flex-fixes-patch-size "3.4 KB">
-->
<!ENTITY file-upstream-fixes-patch "file-&file-version;-upstream_fixes-1.patch">
<!ENTITY file-upstream-fixes-md5 "d99090db596b9db2bed869662199a56a">
<!ENTITY file-upstream-fixes-patch-size "4.0 KB">
<!ENTITY gcc-upstream-fixes-patch "gcc-&gcc-version;-upstream_fixes-1.patch">
<!ENTITY gcc-upstream-fixes-patch-md5 "27266d2a771f2ff812cb6ec9c8b456b4">
<!ENTITY gcc-upstream-fixes-patch-size "18.0 KB">

View File

@ -626,7 +626,7 @@
<para>Zstd</para>
<para>This package contains compression and decompression routines
used by some programs. It provide high compression ratios and a very
used by some programs. It provides high compression ratios and a very
wide range of compression / speed trade-offs.</para>
</listitem>