diff --git a/appendices/dependencies.xml b/appendices/dependencies.xml
index d9c44641c..d93cc1f5e 100644
--- a/appendices/dependencies.xml
+++ b/appendices/dependencies.xml
@@ -4,8 +4,7 @@
%general-entities;
- Systemd
- Udev">
+ SystemdUdev">
Berkeley DB">
]>
@@ -45,7 +44,7 @@
&dependencies;
- Attr, Bash, Binutils, Coreutils, GCC, Gettext, Grep, M4, Make,
+ Attr, Bash, Binutils, Coreutils, GCC, Gettext, Grep, M4, Make,
Perl, Sed, and Texinfo
@@ -2571,9 +2570,10 @@
&before;
Binutils,
- D-Bus, E2fsprogs,
- IProute2, Kmod, Man-DB, Procps-ng, Python,
- &systemd-udev;, and Util-linux
+ D-Bus,
+ E2fsprogs, IProute2, Kmod, Man-DB, Procps-ng, Python,
+ &systemd-udev;,
+ and Util-linux
diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml
index 0dc02ab0f..45190d8c9 100644
--- a/chapter01/changelog.xml
+++ b/chapter01/changelog.xml
@@ -40,6 +40,433 @@
appropriate for the entry or if needed the entire day's listitem.
-->
+
+ 2025-02-13
+
+
+ [bdubbs] - Update to vim-9.1.1106. Addresses
+ #4500.
+
+
+ [bdubbs] - Update to diffutils-3.11. Fixes
+ #5639.
+
+
+ [bdubbs] - Update to libffi-3.4.7. Fixes
+ #5642.
+
+
+ [bdubbs] - Update to linux-6.13.2. Fixes
+ #5643.
+
+
+ [bdubbs] - Update to Python3-3.13.2. Fixes
+ #5640.
+
+
+ [bdubbs] - Update to sysvinit-3.14. Fixes
+ #5641.
+
+
+
+
+
+ 2025-02-02
+
+
+ [bdubbs] - Update to vim-9.1.1071. Addresses
+ #4500.
+
+
+ [bdubbs] - Update to iana-etc-20250123. Addresses
+ #5006.
+
+
+ [bdubbs] - Update to binutils-2.44.0. Fixes
+ #5634.
+
+
+ [bdubbs] - Update to coreutils-9.6. Fixes
+ #5628.
+
+
+ [bdubbs] - Update to e2fsprogs-1.47.2. Fixes
+ #5637.
+
+
+ [bdubbs] - Update to glibc-2.41. Fixes
+ #5638.
+
+
+ [bdubbs] - Update to iproute2-6.13.0. Fixes
+ #5631.
+
+
+ [bdubbs] - Update to libxcrypt-4.4.38. Fixes
+ #5626.
+
+
+ [bdubbs] - Update to linux-6.13.1. Fixes
+ #5629.
+
+
+ [bdubbs] - Update to man-pages-6.10. Fixes
+ #5632.
+
+
+ [bdubbs] - Update to meson-1.7.0. Fixes
+ #5636.
+
+
+ [bdubbs] - Update to perl-5.40.1. Fixes
+ #5630.
+
+
+ [bdubbs] - Update to tcl8.6.16. Fixes
+ #5635.
+
+
+ [bdubbs] - Update to tzdata2025a. Fixes
+ #5627.
+
+
+ [bdubbs] - Update to xz-5.6.4. Fixes
+ #5633.
+
+
+
+
+
+ 2025-01-15
+
+
+ [bdubbs] - Update to vim-9.1.1016. Addresses
+ #4500.
+
+
+ [bdubbs] - Update to iana-etc-20250108. Addresses
+ #5006.
+
+
+ [bdubbs] - Update to util-linux-2.40.4. Fixes
+ #5624.
+
+
+ [bdubbs] - Update to sysvinit-3.13. Fixes
+ #5621.
+
+
+ [bdubbs] - Update to sysklogd-2.7.0. Fixes
+ #5623.
+
+
+ [bdubbs] - Update to shadow-4.17.2. Fixes
+ #5625.
+
+
+ [bdubbs] - Update to setuptools-75.8.0. Fixes
+ #5622.
+
+
+ [bdubbs] - Update to linux-6.12.9. Fixes
+ #5620.
+
+
+ [bdubbs] - Update to gettext-0.23.1. Fixes
+ #5619.
+
+
+
+
+
+ 2025-01-01
+
+
+ [renodr] - Update to libxcrypt-4.4.37. Fixes
+ #5618.
+
+
+ [renodr] - Update to dbus-1.16.0. Fixes
+ #5609.
+
+
+ [bdubbs] - Update to iana-etc-20241220. Addresses
+ #5006.
+
+
+ [bdubbs] - Update to texinfo-7.2. Fixes
+ #5616.
+
+
+ [bdubbs] - Update to sysvinit-3.12. Fixes
+ #5615.
+
+
+ [bdubbs] - Update to shadow-4.17.1. Fixes
+ #5617.
+
+
+ [bdubbs] - Update to procps-ng-4.0.5. Fixes
+ #5611.
+
+
+ [bdubbs] - Update to meson-1.6.1. Fixes
+ #5610.
+
+
+ [bdubbs] - Update to linux-6.12.7. Fixes
+ #5613.
+
+
+ [bdubbs] - Update to kbd-2.7.1. Fixes
+ #5608.
+
+
+ [bdubbs] - Update to jinja2-3.1.5 (Security Update). Fixes
+ #5614.
+
+
+
+
+
+ 2024-12-15
+
+
+ [bdubbs] - Update to vim-9.1.0927. Addresses
+ #4500.
+
+
+ [bdubbs] - Update to iana-etc-20241206. Addresses
+ #5006.
+
+
+ [bdubbs] - Update to systemd-257. Fixes
+ #5559.
+
+
+ [bdubbs] - Update to Python-3.13.1 (Security Update). Fixes
+ #5605.
+
+
+ [bdubbs] - Update to libcap-2.73. Fixes
+ #5604.
+
+
+ [bdubbs] - Update to linux-6.12.5. Fixes
+ #5607.
+
+
+ [bdubbs] - Update to kbd-2.7. Fixes
+ #5608.
+
+
+ [bdubbs] - Update to gettext-0.23. Fixes
+ #5603.
+
+
+
+
+
+ 2024-12-01
+
+
+ [bdubbs] - Update to iana-etc-20241122. Addresses
+ #5006.
+
+
+ [bdubbs] - Update to file-5.46. Fixes
+ #5601.
+
+
+ [bdubbs] - Update to iproute2-6.12.0. Fixes
+ #5597.
+
+
+ [bdubbs] - Update to libtool-2.5.4. Fixes
+ #5598.
+
+
+ [bdubbs] - Update to linux-6.12.1. Fixes
+ #5586.
+
+
+ [bdubbs] - Update to setuptools-75.6.0 (Python Module). Fixes
+ #5599.
+
+
+ [bdubbs] - Update to wheel-0.45.1 (Python Module). Fixes
+ #5600.
+
+
+
+
+
+ 2024-11-15
+
+
+ [bdubbs] - Update to vim-9.1.0866. Addresses
+ #4500.
+
+
+ [bdubbs] - Update to iana-etc-20241024. Addresses
+ #5006.
+
+
+ [bdubbs] - Update to wheel-0.45.0 (Python Module). Fixes
+ #5593.
+
+
+ [bdubbs] - Update to setuptools-75.5.0 (Python Module). Fixes
+ #5595.
+
+
+ [bdubbs] - Update to linux-6.11.8. Fixes
+ #5582.
+
+
+ [bdubbs] - Update to libcap-2.72. Fixes
+ #5594.
+
+
+
+
+
+ 2024-11-08
+
+
+ [bdubbs] - Added binutils-2.43.1-upstream_fix-1.patch. Fixes
+ #5591.
+
+
+ [bdubbs] - Update to flit_core-3.10.1. Fixes
+ #5589.
+
+
+ [bdubbs] - Update to expat-2.6.4. Fixes
+ #5590.
+
+
+
+
+
+ 2024-10-25
+
+
+ [bdubbs] - Update to linux-6.11.6. Fixes
+ #5588.
+
+
+ [bdubbs] - Update to libcap-2.71. Fixes
+ #5584.
+
+
+ [bdubbs] - Update to setuptools-75.3.0. Fixes
+ #5585.
+
+
+ [bdubbs] - Update to flit_core-3.10.0. Fixes
+ #5587.
+
+
+
+
+
+ 2024-10-25
+
+
+ [bdubbs] - Update to iana-etc-20241015. Addresses
+ #5006.
+
+
+ [bdubbs] - Update to vim-9.1.0813. Addresses
+ #4500.
+
+
+ [bdubbs] - Update to xz-5.6.3. Fixes
+ #5572.
+
+
+ [bdubbs] - Update to sysvinit-3.11. Fixes
+ #5581.
+
+
+ [bdubbs] - Update to setuptools-75.2.0. Fixes
+ #5577.
+
+
+ [bdubbs] - Update to Python3-3.13.0. Fixes
+ #5575.
+
+
+ [bdubbs] - Update to openssl-3.4.0. Fixes
+ #5582.
+
+
+ [bdubbs] - Update to meson-1.6.0. Fixes
+ #5580.
+
+
+ [bdubbs] - Update to markupsafe-3.0.2. Fixes
+ #5576.
+
+
+ [bdubbs] - Update to linux-6.11.5. Fixes
+ #5574.
+
+
+ [bdubbs] - Update to less-668. Fixes
+ #5578.
+
+
+ [bdubbs] - Update to elfutils-0.192. Fixes
+ #5579.
+
+
+
+
+
+ 2024-10-03
+
+
+ [bdubbs] - Revert back to tcl8.6.15.
+
+
+
+
+
+ 2024-10-01
+
+
+ [bdubbs] - Update to Python3-3.12.7. Fixes
+ #5571.
+
+
+ [bdubbs] - Update to tcl9.0.0. Fixes
+ #5570.
+
+
+ [bdubbs] - Update to linux-6.11.1. Fixes
+ #5556.
+
+
+ [bdubbs] - Update to libtool-2.5.3. Fixes
+ #5569.
+
+
+ [bdubbs] - Update to iproute2-6.11.0. Fixes
+ #5561.
+
+
+ [bdubbs] - Update to bash-5.2.37. Fixes
+ #5567.
+
+
+ [bdubbs] - Update to bc-7.0.3. Fixes
+ #5568.
+
+
+
+
2024-09-20
diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml
index dd1bf7bad..dc748661e 100644
--- a/chapter01/whatsnew.xml
+++ b/chapter01/whatsnew.xml
@@ -38,15 +38,15 @@
-
+
Bc-&bc-version;
-
+
@@ -56,39 +56,39 @@
-
+
-
-
-
+
Expat-&expat-version;
-
+
-
+
Gawk-&gawk-version;
@@ -98,12 +98,12 @@
-
-
+
@@ -131,39 +131,42 @@
-
-
-
+
-
+
-
-
-
+
Libpipeline-&libpipeline-version;
-
+
+
+ Libxcrypt-&libxcrypt-version;
+
Linux-&linux-version;
@@ -179,12 +182,12 @@
Man-DB-&man-db-version;
-
-
+
Meson-&meson-version;
@@ -206,15 +209,15 @@
-
+
-
+
@@ -230,18 +233,18 @@
Setuptools-&setuptools-version;
-
+
Sysklogd-&sysklogd-version;
Systemd-&systemd-version;
-
+
@@ -257,21 +260,21 @@
Udev from Systemd-&systemd-version;
-
+
Vim-&vim-version;
-
+
-
+
@@ -292,16 +295,18 @@
Added:
-
+
Removed:
diff --git a/chapter04/addinguser.xml b/chapter04/addinguser.xml
index eed85c569..92ae1a881 100644
--- a/chapter04/addinguser.xml
+++ b/chapter04/addinguser.xml
@@ -20,8 +20,8 @@
the installation process. As root,
issue the following commands to add the new user:
-groupadd lfs
-useradd -s /bin/bash -g lfs -m -k /dev/null lfs
+groupadd &lfs-groupname;
+useradd -s /bin/bash -g &lfs-groupname; -m -k /dev/null &lfs-username;
This is what the command line options mean:
@@ -74,13 +74,13 @@ useradd -s /bin/bash -g lfs -m -k /dev/null lfs
have a password), you need to set a password for &lfs-user;. Issue the
following command as the &root; user to set the password:
-passwd lfs
+passwd &lfs-username;
Grant lfs full access to
all the directories under $LFS by making
lfs the owner:
-chown -v lfs $LFS/{usr{,/*},lib,var,etc,bin,sbin,tools}
+chown -v &lfs-username; $LFS/{usr{,/*},lib,var,etc,bin,sbin,tools}
In some host systems, the following su command does not complete
properly and suspends the login for the &lfs-user; user to the background.
@@ -91,7 +91,7 @@ useradd -s /bin/bash -g lfs -m -k /dev/null lfs
logging in as &lfs-user; on a virtual console, or with the following
substitute/switch user command:
-su - lfs
+su - &lfs-username;
The -
instructs
su to start a login shell as opposed to a non-login shell.
diff --git a/chapter04/settingenviron.xml b/chapter04/settingenviron.xml
index b179bb0b3..564e29d84 100644
--- a/chapter04/settingenviron.xml
+++ b/chapter04/settingenviron.xml
@@ -76,11 +76,8 @@ EOF
umask 022
- Setting the user file-creation mask (umask) to 022 ensures that newly
- created files and directories are only writable by their owner, but are
- readable and executable by anyone (assuming default modes are used by the
- open(2) system call, new files
- will end up with permission mode 644 and directories with mode 755).
+ Setting the umask as we've already explained in
+
diff --git a/chapter05/glibc.xml b/chapter05/glibc.xml
index 584781fa3..7111ceb90 100644
--- a/chapter05/glibc.xml
+++ b/chapter05/glibc.xml
@@ -165,8 +165,8 @@ cd build
packages to define the location where the package should be
installed. If it is not set, it defaults to the root (/) directory. Here we specify that
- the package is installed in $LFS
- , which will become the root directory in
+ $LFS, which will become the root directory in .
diff --git a/chapter06/bash.xml b/chapter06/bash.xml
index 66c6ef3fc..54fa6f444 100644
--- a/chapter06/bash.xml
+++ b/chapter06/bash.xml
@@ -48,8 +48,7 @@
./configure --prefix=/usr \
--build=$(sh support/config.guess) \
--host=$LFS_TGT \
- --without-bash-malloc \
- bash_cv_strtold_broken=no
+ --without-bash-malloc
The meaning of the configure options:
diff --git a/chapter06/binutils-pass2.xml b/chapter06/binutils-pass2.xml
index fb54becb0..a1892a1aa 100644
--- a/chapter06/binutils-pass2.xml
+++ b/chapter06/binutils-pass2.xml
@@ -55,7 +55,7 @@
produced binaries mistakenly linked against libraries from the host
distro. Work around this issue:
-sed '6009s/$add_dir//' -i ltmain.sh
+sed '6031s/$add_dir//' -i ltmain.sh
Create a separate build directory again:
diff --git a/chapter07/changingowner.xml b/chapter07/changingowner.xml
index 66cb25b72..1e1a0ea1e 100644
--- a/chapter07/changingowner.xml
+++ b/chapter07/changingowner.xml
@@ -33,6 +33,6 @@
user root by running the following
command:
-chown -R --from lfs root:root $LFS/{usr,lib,var,etc,bin,sbin,tools}
+chown -R --from &lfs-username; root:root $LFS/{usr,lib,var,etc,bin,sbin,tools}
diff --git a/chapter07/createfiles.xml b/chapter07/createfiles.xml
index 856ef0dbe..8f97c2d3e 100644
--- a/chapter07/createfiles.xml
+++ b/chapter07/createfiles.xml
@@ -180,11 +180,11 @@ EOF
nogroup to avoid an
unnamed ID. But other distros may treat this ID differently, so any
portable program should not depend on this assignment.
-
+
Some tests in need a regular
user. We add this user here and delete this account at the end of that
chapter.
diff --git a/chapter08/acl.xml b/chapter08/acl.xml
index adef493f1..63892d68e 100644
--- a/chapter08/acl.xml
+++ b/chapter08/acl.xml
@@ -53,10 +53,13 @@
make
The Acl tests must be run on a filesystem that supports access
- controls, but not until the Coreutils package has been built,
- using the Acl libraries. If desired, return to this package
- and run make check after the Coreutils
- package has been built.
+ controls. To test the results, issue:
+
+make check
+
+ One test named test/cp.test is known to
+ fail because Coreutils is not built with
+ the Acl support yet.
Install the package:
diff --git a/chapter08/bash.xml b/chapter08/bash.xml
index 9dbcf7863..f07a692e7 100644
--- a/chapter08/bash.xml
+++ b/chapter08/bash.xml
@@ -45,7 +45,6 @@
./configure --prefix=/usr \
--without-bash-malloc \
--with-installed-readline \
- bash_cv_strtold_broken=no \
--docdir=/usr/share/doc/bash-&bash-version;
diff --git a/chapter08/binutils.xml b/chapter08/binutils.xml
index 5ff74280f..660298bb5 100644
--- a/chapter08/binutils.xml
+++ b/chapter08/binutils.xml
@@ -51,7 +51,6 @@ cd build
../configure --prefix=/usr \
--sysconfdir=/etc \
- --enable-gold \
--enable-ld=default \
--enable-plugins \
--enable-shared \
@@ -64,14 +63,6 @@ cd build
The meaning of the new configure parameters:
-
- --enable-gold
-
- Build the gold linker and install it as ld.gold (alongside the
- default linker).
-
-
-
--enable-ld=default
@@ -136,15 +127,14 @@ cd build
grep '^FAIL:' $(find -name '*.log')
-
-
Install the package:
make tooldir=/usr install
- Remove useless static libraries:
+ Remove useless static libraries and other files:
-rm -fv /usr/lib/lib{bfd,ctf,ctf-nobfd,gprofng,opcodes,sframe}.a
+rm -rfv /usr/lib/lib{bfd,ctf,ctf-nobfd,gprofng,opcodes,sframe}.a \
+ /usr/share/doc/gprofng/
@@ -157,7 +147,7 @@ cd build
Installed directory
- addr2line, ar, as, c++filt, dwp, elfedit, gprof, gprofng, ld, ld.bfd, ld.gold, nm,
+ addr2line, ar, as, c++filt, dwp, elfedit, gprof, gprofng, ld, ld.bfd, nm,
objcopy, objdump, ranlib, readelf, size, strings, and strip
libbfd.so, libctf.so, libctf-nobfd.so, libgprofng.so,
libopcodes.so, and libsframe.so
@@ -267,17 +257,6 @@ cd build
-
- ld.gold
-
- A cut down version of ld that only supports the
- elf object file format
-
- ld.gold
-
-
-
-
ld.bfd
diff --git a/chapter08/coreutils.xml b/chapter08/coreutils.xml
index 181153d1d..36d428981 100644
--- a/chapter08/coreutils.xml
+++ b/chapter08/coreutils.xml
@@ -55,20 +55,35 @@
Now prepare Coreutils for compilation:
-autoreconf -fiv
+autoreconf -fv
+automake -af
FORCE_UNSAFE_CONFIGURE=1 ./configure \
--prefix=/usr \
--enable-no-install-program=kill,uptime
- The meaning of the configure options:
+ The meaning of the commands and configure options:
- autoreconf
+ autoreconf -fv
The patch for internationalization has modified the
build system, so the configuration files must
- be regenerated.
+ be regenerated. Normally we would use the
+ -i option to update the standard
+ auxiliary files, but for this package it does not work because
+ configure.ac specified an old gettext
+ version.
+
+
+
+
+ automake -af
+
+ The automake auxiliary files were not updated by
+ autoreconf due to the missing
+ -i option. This command updates them
+ to prevent a build failure.
@@ -134,12 +149,6 @@ FORCE_UNSAFE_CONFIGURE=1 ./configure \
groupdel dummy
-
- Two tests, tests/cp/preserve-mode.sh and
- tests/mv/acl.sh, are known to
- fail in the chroot environment, but pass in a complete system.
-
-
Install the package:
make install
diff --git a/chapter08/dbus.xml b/chapter08/dbus.xml
index 36d5c55ca..086b30b93 100644
--- a/chapter08/dbus.xml
+++ b/chapter08/dbus.xml
@@ -48,41 +48,21 @@
Prepare D-Bus for compilation:
-./configure --prefix=/usr \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --runstatedir=/run \
- --enable-user-session \
- --disable-static \
- --disable-doxygen-docs \
- --disable-xml-docs \
- --docdir=/usr/share/doc/dbus-&dbus-version; \
- --with-system-socket=/run/dbus/system_bus_socket
+mkdir build
+cd build
+
+meson setup --prefix=/usr --buildtype=release --wrap-mode=nofallback ..
- The meaning of the configure options:
+ The meaning of the meson options:
- --runstatedir=/run and
- --with-system-socket=/run/dbus/system_bus_socket
+ --wrap-mode=nofallback
- These cause the PID file and the system bus socket
- to be in /run, instead of
- the deprecated /var/run.
-
-
-
-
-
- --enable-user-session
-
-
- This ensures the D-Bus per-user service and socket unit
- files are installed for Systemd. They are not useful (but
- harmless) in a base LFS installation, however they can be used
- once systemd is rebuilt with PAM support in BLFS.
+ This switch prevents meson from attempting to download a copy
+ of the Glib package for the tests.
@@ -90,11 +70,11 @@
Compile the package:
-make
+ninja
To test the results, issue:
-make check
+ninja test
Many tests are disabled because they require additional
packages that are not included in LFS. Instructions for running the
@@ -103,7 +83,7 @@
Install the package:
-make install
+ninja install
Create a symlink so that D-Bus and systemd can use the same
machine-id file:
@@ -149,7 +129,7 @@
dbus-daemon
- Is the D-Bus message bus daemon
+ is the D-Bus message bus daemon
dbus-daemon
@@ -159,7 +139,7 @@
dbus-launch
- Starts dbus-daemon from a shell
+ starts dbus-daemon from a shell
script
dbus-launch
@@ -170,7 +150,7 @@
dbus-monitor
- Monitors messages passing through a D-Bus message bus
+ monitors messages passing through a D-Bus message bus
dbus-monitor
@@ -180,7 +160,7 @@
dbus-run-session
- Starts a session bus instance of dbus-daemon
+ starts a session bus instance of dbus-daemon
from a shell script and starts a specified program in that
session
@@ -192,7 +172,7 @@
dbus-send
- Sends a message to a D-Bus message bus
+ sends a message to a D-Bus message bus
dbus-send
@@ -202,7 +182,7 @@
dbus-test-tool
- Is a tool to help packages test
+ is a tool to help packages test
D-Bus
dbus-test-tool
@@ -214,7 +194,7 @@
dbus-update-activation-environment
- Updates environment variables that will be set for
+ updates environment variables that will be set for
D-Bus session services
dbus-update-activation-environment
diff --git a/chapter08/e2fsprogs.xml b/chapter08/e2fsprogs.xml
index c5718c191..d99922610 100644
--- a/chapter08/e2fsprogs.xml
+++ b/chapter08/e2fsprogs.xml
@@ -146,7 +146,7 @@ install-info --dir-file=/usr/share/info/dir /usr/share/info/com_err.info
/etc/mke2fs.conf contains the default value of
various command line options of mke2fs. You may
- edit the file to make the default values suitable for your need.
+ edit the file to make the default values suitable for your needs.
For example, some utilities (not in LFS or BLFS) cannot recognize a
ext4 file system with
metadata_csum_seed feature enabled.
diff --git a/chapter08/flit-core.xml b/chapter08/flit-core.xml
index 419efc30f..55be940d4 100644
--- a/chapter08/flit-core.xml
+++ b/chapter08/flit-core.xml
@@ -42,11 +42,11 @@
Build the package:
-pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD
+pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD
Install the package:
-pip3 install --no-index --no-user --find-links dist flit_core
+pip3 install --no-index --find-links dist flit_core
The meaning of the pip3 configuration options and commands:
diff --git a/chapter08/gawk.xml b/chapter08/gawk.xml
index bc19acaaf..bc3717653 100644
--- a/chapter08/gawk.xml
+++ b/chapter08/gawk.xml
@@ -84,8 +84,7 @@ make install
If desired, install the documentation:
-mkdir -pv /usr/share/doc/gawk-&gawk-version;
-cp -v doc/{awkforai.txt,*.{eps,pdf,jpg}} /usr/share/doc/gawk-&gawk-version;
+install -vDm644 doc/{awkforai.txt,*.{eps,pdf,jpg}} -t /usr/share/doc/gawk-&gawk-version;
diff --git a/chapter08/gettext.xml b/chapter08/gettext.xml
index f26d15536..c0829253a 100644
--- a/chapter08/gettext.xml
+++ b/chapter08/gettext.xml
@@ -42,7 +42,15 @@
Installation of Gettext
+
Prepare Gettext for compilation:
./configure --prefix=/usr \
diff --git a/chapter08/glibc.xml b/chapter08/glibc.xml
index 5db3602ec..be1f99d0d 100644
--- a/chapter08/glibc.xml
+++ b/chapter08/glibc.xml
@@ -152,7 +152,7 @@ esac
You may see some test failures. The Glibc test suite is
somewhat dependent on the host system. A few failures out of
- over 5000 tests can generally be ignored. This is a list of the
+ over 6000 tests can generally be ignored. This is a list of the
most common issues seen for recent versions of LFS:
@@ -317,6 +317,19 @@ install -vm755 dest/usr/lib/*.so.* /usr/lib
the locales. Once they are finished, reboot the system
immediately.
+
+
+ When the system has successfully rebooted, if you are running
+ a LFS system prior to 12.0 (exclusive) where GCC was not built
+ with the --disable-fixincludes option,
+ move two GCC headers into a better location and
+ remove the stale fixed
copies of the Glibc headers:
+
+
+ DIR=$(dirname $(gcc -print-libgcc-file-name))
+[ -e $DIR/include/limits.h ] || mv $DIR/include{-fixed,}/limits.h
+[ -e $DIR/include/syslimits.h ] || mv $DIR/include{-fixed,}/syslimits.h
+rm -rfv $(dirname $(gcc -print-libgcc-file-name))/include-fixed/*
Install the package:
@@ -496,7 +509,7 @@ done
cp -v zone.tab zone1970.tab iso3166.tab $ZONEINFO
zic -d $ZONEINFO -p America/New_York
-unset ZONEINFO
+unset ZONEINFO tz
The meaning of the zic commands:
diff --git a/chapter08/grub.xml b/chapter08/grub.xml
index 54209e674..11daec924 100644
--- a/chapter08/grub.xml
+++ b/chapter08/grub.xml
@@ -187,7 +187,7 @@ mv -v /etc/bash_completion.d/grub /usr/share/bash-completion/completions
grub-fstest
- Is a tool to debug the filesystem driver
+ Is a tool to debug the file system driver
grub-fstest
diff --git a/chapter08/iproute2.xml b/chapter08/iproute2.xml
index 8a6755f3d..bcf08858b 100644
--- a/chapter08/iproute2.xml
+++ b/chapter08/iproute2.xml
@@ -77,8 +77,7 @@ rm -fv man/man8/arpd.8
If desired, install the documentation:
-mkdir -pv /usr/share/doc/iproute2-&iproute2-version;
-cp -v COPYING README* /usr/share/doc/iproute2-&iproute2-version;
+install -vDm644 COPYING README* -t /usr/share/doc/iproute2-&iproute2-version;
@@ -278,7 +277,7 @@ cp -v COPYING README* /usr/share/doc/iproute2-&iproute2-version;
tc class allows users to set up classes based
- on the queuing discipline scheduling
+ on the queueing discipline scheduling
tc filter allows users to set up the QoS/CoS
packet filtering
diff --git a/chapter08/jinja2.xml b/chapter08/jinja2.xml
index c06da9139..0ddbf5ef5 100644
--- a/chapter08/jinja2.xml
+++ b/chapter08/jinja2.xml
@@ -42,11 +42,11 @@
Build the package:
-pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD
+pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD
Install the package:
-pip3 install --no-index --no-user --find-links dist Jinja2
+pip3 install --no-index --find-links dist Jinja2
diff --git a/chapter08/libtool.xml b/chapter08/libtool.xml
index cb550b5d6..be88fa169 100644
--- a/chapter08/libtool.xml
+++ b/chapter08/libtool.xml
@@ -52,13 +52,7 @@
To test the results, issue:
-make -k check
-
- Five tests are known to fail in the LFS build environment due
- to a circular dependency, but these tests pass if rechecked after
- automake has been installed. Additionally, with grep-3.8 or newer,
- two tests will trigger a warning for non-POSIX regular expressions and
- fail.
+make check
Install the package:
diff --git a/chapter08/markupsafe.xml b/chapter08/markupsafe.xml
index 685b7b520..232cb317b 100644
--- a/chapter08/markupsafe.xml
+++ b/chapter08/markupsafe.xml
@@ -48,7 +48,7 @@
Install the package:
-pip3 install --no-index --no-user --find-links dist Markupsafe
+pip3 install --no-index --find-links dist Markupsafe
diff --git a/chapter08/ninja.xml b/chapter08/ninja.xml
index 5bccea1ea..6850d06a0 100644
--- a/chapter08/ninja.xml
+++ b/chapter08/ninja.xml
@@ -67,7 +67,7 @@
Build Ninja with:
-python3 configure.py --bootstrap
+python3 configure.py --bootstrap --verbose
The meaning of the build option:
@@ -80,10 +80,20 @@
+
+ --verbose
+
+ This parameter makes configure.py show
+ the progress building Ninja.
+
+
+
The package tests cannot run in the chroot environment. They require
- cmake.
+ cmake. But the basic
+ function of this package is already tested by rebuilding itself
+ (with the --bootstrap option) anyway.
This version of Perl builds the Compress::Raw::Zlib and
Compress::Raw::BZip2 modules. By
default Perl will use an internal copy of the sources for the build.
diff --git a/chapter08/procps.xml b/chapter08/procps.xml
index 8a4716ade..eb7d277dc 100644
--- a/chapter08/procps.xml
+++ b/chapter08/procps.xml
@@ -45,12 +45,14 @@
./configure --prefix=/usr \
--docdir=/usr/share/doc/procps-ng-&procps-ng-version; \
--disable-static \
- --disable-kill
+ --disable-kill \
+ --enable-watch8bit
./configure --prefix=/usr \
--docdir=/usr/share/doc/procps-ng-&procps-ng-version; \
--disable-static \
--disable-kill \
+ --enable-watch8bit \
--with-systemd
@@ -63,12 +65,20 @@
command; it will be installed from the Util-linux package.
+
+
+ --enable-watch8bit
+
+ This switch enables the ncursesw support for the
+ watch command, so it can handle 8-bit
+ characters.
+
+
Compile the package:
-make
-make src_w_LDADD='$(LDADD) -lsystemd'
+make
so don't do that
+ in the .bashrc file or anywhere else.
+
sed -e 's:#ENCRYPT_METHOD DES:ENCRYPT_METHOD YESCRYPT:' \
-e 's:/var/spool/mail:/var/mail:' \
-e '/PATH=/{s@/sbin:@@;s@/bin:@@}' \
-i etc/login.defs
-
- If you chose to build Shadow with Cracklib support, issue this command:
-
-sed -i 's:DICTPATH.*:DICTPATH\t/lib/cracklib/pw_dict:' etc/login.defs
-
+
]]>
+
]]>
+
]]>
-
-
+
+
-
+
+
-
+
-
+
-
-
+
+
-
+
-
+
@@ -172,14 +172,14 @@
-
-
+
+
-
+
-
+
-
+
@@ -189,7 +189,7 @@
-
+
@@ -200,12 +200,12 @@
-
-
+
+
-
+
-
+
@@ -215,7 +215,7 @@
-
+
@@ -223,10 +223,10 @@
-
+
-
+
@@ -234,7 +234,7 @@
-
+
@@ -245,24 +245,24 @@
-
-
+
+
-
+
-
-
-
-
+
+
+
+
-
-
+
+
-
+
-
-
-
+
+
+
@@ -296,7 +296,7 @@
-
+
@@ -317,10 +317,10 @@
-
-
+
+
-
+
@@ -341,26 +341,26 @@
-
-
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
+
@@ -373,10 +373,10 @@
-
-
+
+
-
+
@@ -389,18 +389,18 @@
-
-
+
+
-
+
-
+
-
-
+
+
-
+
@@ -410,33 +410,33 @@
-
+
-
-
+
+
-
+
-
-
+
+
-
-
+
+
-
+
-
-
+
+
-
+
-
+
-
-
-
+
+
+
-
+
-
-
-
-
+
+
+
+
-
-
+
+
@@ -637,54 +637,54 @@
-
-
+
+
-
+
-
+
-
-
+
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
-
-
+
+
+
-
-
+
+
-
+
-
+
@@ -695,60 +695,59 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
+
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
-
+
+
-
+
-
+
@@ -783,12 +782,12 @@
-
-
+
+
-
+
-
+
@@ -810,6 +809,6 @@
-
+
diff --git a/part3intro/toolchaintechnotes.xml b/part3intro/toolchaintechnotes.xml
index 3714596fc..1dad94103 100644
--- a/part3intro/toolchaintechnotes.xml
+++ b/part3intro/toolchaintechnotes.xml
@@ -360,7 +360,7 @@ checking what linker to use... /mnt/lfs/tools/i686-lfs-linux-gnu/bin/ldNext comes glibc. The most important
considerations for building glibc are the compiler, binary tools, and
kernel headers. The compiler and binary tools are generally not an issue
- since glibc will always those relating to the --host
+ since glibc will always use those relating to the --host
parameter passed to its configure script; e.g., in our case, the compiler
will be $LFS_TGT-gcc and the readelf
tool will be $LFS_TGT-readelf. The kernel headers can
diff --git a/patches.ent b/patches.ent
index fbb773577..c90d38120 100644
--- a/patches.ent
+++ b/patches.ent
@@ -7,12 +7,17 @@
-->
+
-
-
+
+
@@ -36,7 +41,7 @@
-->
-
+