From 11d5dee3a401f8611836dcd1c3e4bc572765b683 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Tue, 27 Jul 2021 14:11:38 -0500 Subject: Minor instruction changes and text updates. Move coreutils library from /usr/libexec to /usr/lib in both Chapter 6 and Chapter 8. Text updates in chapter08/pkgmgt.xml and chapter09/locale.xml. Restore deletion of hanging test in chapter08/util-linux.xml. Text changes in stripping and make instruction compatible with jhalfs. --- chapter08/coreutils.xml | 1 + chapter08/pkgmgt.xml | 10 +++++----- chapter08/strippingagain.xml | 26 +++++++++++++++----------- chapter08/util-linux.xml | 11 ++++++----- 4 files changed, 27 insertions(+), 21 deletions(-) (limited to 'chapter08') diff --git a/chapter08/coreutils.xml b/chapter08/coreutils.xml index c5d2a5032..c3c62bf89 100644 --- a/chapter08/coreutils.xml +++ b/chapter08/coreutils.xml @@ -69,6 +69,7 @@ autoreconf -fiv FORCE_UNSAFE_CONFIGURE=1 ./configure \ --prefix=/usr \ + --libexecdir=/usr/lib \ --enable-no-install-program=kill,uptime diff --git a/chapter08/pkgmgt.xml b/chapter08/pkgmgt.xml index 43b9c57d3..c5fcaa4be 100644 --- a/chapter08/pkgmgt.xml +++ b/chapter08/pkgmgt.xml @@ -69,7 +69,7 @@ If a package containing a shared library is updated, and - if the name of the library changes, then any the packages dynamically + if the name of the library changes, then any packages dynamically linked to the library need to be recompiled in order to link against the newer library. (Note that there is no correlation between the package version and the name of the library.) For example, consider a package @@ -123,16 +123,16 @@ - If a binary or a shared library is overwrote, the processes + If a binary or a shared library is overwritten, the processes using the code or data in the binary or library may crash. The correct way to update a binary or a shared library without causing - the process to crash is: remove it first, then install the new + the process to crash is to remove it first, then install the new version into position. The install command provided by Coreutils has already implemented this and most packages use it to install binaries and - libraries. So you won't be troubled by this issue most of the time. + libraries. This means that you won't be troubled by this issue most of the time. However, the install process of some packages (notably Mozilla JS - in BLFS) just overwrites the file if it exists and causes crash, so + in BLFS) just overwrites the file if it exists and causes a crash, so it's safer to save your work and close unneeded running processes before updating a package. diff --git a/chapter08/strippingagain.xml b/chapter08/strippingagain.xml index 196698f2a..ed690eb1a 100644 --- a/chapter08/strippingagain.xml +++ b/chapter08/strippingagain.xml @@ -24,18 +24,18 @@ backup of the LFS system in its current state. The debugging symbols for selected libraries are placed - in separate files. These debugging information is needed if running + in separate files. This debugging information is needed if running regression tests that use valgrind or gdb later in BLFS. - And, strip will overwrite the binary or library - file. This may crash the processes using code or data from the file. If - the process running strip itself is affected, the - binary or library being stripped may be destroyed. This may make the - system completely unusable. To avoid it, we'll copy some libraries and - binaries into /tmp, strip them + Note that strip will overwrite the binary or library + file it is processing. This may crash the processes using code or data from + the file. If the process running strip itself is + affected, the binary or library being stripped may be destroyed. This may + make the system completely unusable. To avoid it, we'll copy some libraries + and binaries into /tmp, strip them there, and install them back with the install command. Read the related entry in for the rationale to use the install command here. @@ -84,15 +84,19 @@ find /usr/lib -type f -name \*.a \ for i in $(find /usr/lib -type f -name \*.so* ! -name \*dbg); do case "$online_usrlib $save_usrlib" in - *$(basename $i)* ) ;; - * ) strip --strip-unneeded $i ;; + *$(basename $i)* ) + ;; + * ) strip --strip-unneeded $i + ;; esac done for i in $(find /usr/bin -type f); do case "$online_usrbin" in - *$(basename $i)* ) ;; - * ) strip --strip-all $i ;; + *$(basename $i)* ) + ;; + * ) strip --strip-all $i + ;; esac done diff --git a/chapter08/util-linux.xml b/chapter08/util-linux.xml index d7613a74c..bcc3c98bd 100644 --- a/chapter08/util-linux.xml +++ b/chapter08/util-linux.xml @@ -94,14 +94,15 @@ bash tests/run.sh --srcdir=$PWD --builddir=$PWD - + chown -Rv tester . su tester -c "make -k check" -- cgit v1.2.3-54-g00ecf