diff --git a/chapter01/whatsnew.xml b/chapter01/whatsnew.xml
index 4ab0abff3..d6d646f7b 100644
--- a/chapter01/whatsnew.xml
+++ b/chapter01/whatsnew.xml
@@ -294,7 +294,7 @@
- Packaging-24.2
+ Packaging-&packaging-version;
diff --git a/chapter06/diffutils.xml b/chapter06/diffutils.xml
index 8738e32b0..404fe9b66 100644
--- a/chapter06/diffutils.xml
+++ b/chapter06/diffutils.xml
@@ -43,21 +43,40 @@
Installation of Diffutils
- When Diffutils is being configured, it checks to see if it is
- being cross compiled. If it is, configuration fails. Since we are
- cross compiling, comment out the specific lines that perform that
- test now:
-
- sed -e '46252,+3 s/^/#/' \
- -e '46596,+3 s/^/#/' \
- -i configure
-
Prepare Diffutils for compilation:
./configure --prefix=/usr \
--host=$LFS_TGT \
+ gl_cv_func_strcasecmp_works=y \
--build=$(./build-aux/config.guess)
+
+ The meaning of the configure options:
+
+
+
+ gl_cv_func_strcasecmp_works=y
+
+ This option specify the result of a check for the
+ strcasecmp. The check requires running a
+ compiled C program, and this is impossible during
+ cross-compilation because in general a cross-compiled program
+ cannot run on the host distro. Normally for such a check the
+ configure script would use a fall-back value
+ for cross-compilation, but the fall-back value for this check is
+ absent and the configure script would have no
+ value to use and error out. The upstream has already fixed the
+ issue, but to apply the fix we'd need to run
+ autoconf that the host distro may lack. So
+ we just specify the check result (y as we know
+ the strcasecmp function in
+ Glibc-&glibc-version; works fine) instead, then
+ configure will just use the specified value and
+ skip the check.
+
+
+
+
Compile the package:
make
diff --git a/chapter08/gperf.xml b/chapter08/gperf.xml
index bbfbbe735..25939135a 100644
--- a/chapter08/gperf.xml
+++ b/chapter08/gperf.xml
@@ -48,11 +48,9 @@
make
- The tests are known to fail if running multiple
- simultaneous tests (-j option greater than 1). To test
- the results, issue:
+ To test the results, issue:
-make -j1 check
+make check
Install the package:
diff --git a/chapter08/packaging.xml b/chapter08/packaging.xml
index b3e9e439d..f1a6def9c 100644
--- a/chapter08/packaging.xml
+++ b/chapter08/packaging.xml
@@ -43,7 +43,7 @@
- Installation of packaging
+ Installation of Packaging
Compile packaging with the following command:
diff --git a/chapter08/stripping.xml b/chapter08/stripping.xml
index 17eb12da7..3d518dd56 100644
--- a/chapter08/stripping.xml
+++ b/chapter08/stripping.xml
@@ -24,10 +24,15 @@
backup of the LFS system in its current state.
A strip command with the
- --strip-unneeded option removes all debug symbols
- from a binary or library. It also removes all symbol table entries not
+ --strip-unneeded option removes all debug symbols from
+ a binary or library. It also removes all symbol table entries not normally
needed by the linker (for static libraries) or dynamic linker (for
- dynamically linked binaries and shared libraries).
+ dynamically linked binaries and shared libraries). Using
+ --strip-debug does not remove symbol table entries
+ that may be needed by some applications. The difference between "unneeded"
+ and "debug" is very small. For example, an unstripped libc.a is 22.4 MB.
+ After stripping with --strip-debug it is 5.9 MB. Using --strip-unneeded only
+ reduces the size further to only 5.8 MB.
+
]]>