aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chapter01/changelog.xml5
-rw-r--r--chapter06/kmod.xml5
-rw-r--r--chapter06/ncurses.xml2
-rw-r--r--chapter06/procps.xml4
-rw-r--r--chapter06/readline.xml17
-rw-r--r--chapter06/xz.xml2
-rw-r--r--chapter06/zlib.xml2
7 files changed, 16 insertions, 21 deletions
diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml
index 57ff3695e..699b008ac 100644
--- a/chapter01/changelog.xml
+++ b/chapter01/changelog.xml
@@ -39,6 +39,11 @@
<para>2013-12-13</para>
<itemizedlist>
<listitem>
+ <para>[bdubbs] - Fix kmod, procps-ng, zlib, readline, ncurses,
+ and xz methods of establishing correct symbolic links
+ for libraries.</para>
+ </listitem>
+ <listitem>
<para>[bdubbs] - Update to procps-ng-3.3.9. Fixes
<ulink url="&lfs-ticket-root;3439">#3439</ulink>.</para>
</listitem>
diff --git a/chapter06/kmod.xml b/chapter06/kmod.xml
index f87024868..0b84f5b3a 100644
--- a/chapter06/kmod.xml
+++ b/chapter06/kmod.xml
@@ -95,10 +95,7 @@ ln -sv kmod /bin/lsmod</userinput></screen>
<para> Make sure that all libraries are in the correct directory: </para>
<screen><userinput remap="install">mv -v /usr/lib/libkmod.so.* /lib
-ln -svf ../../lib/libkmod.so.2.2.5 /usr/lib/libkmod.so</userinput></screen>
-
-<!-- Note to editors: When upgrading kmod, make sure the library version
- specified above has not changed -->
+ln -svf ../../lib/$(readlink /usr/lib/libkmod.so) /usr/lib/libkmod.so</userinput></screen>
</sect2>
diff --git a/chapter06/ncurses.xml b/chapter06/ncurses.xml
index 6f9cc3792..df362d4bd 100644
--- a/chapter06/ncurses.xml
+++ b/chapter06/ncurses.xml
@@ -110,7 +110,7 @@
<para>Because the libraries have been moved, one symlink points to
a non-existent file. Recreate it:</para>
-<screen><userinput remap="install">ln -sfv ../../lib/libncursesw.so.5 /usr/lib/libncursesw.so</userinput></screen>
+<screen><userinput remap="install">ln -sfv ../../lib/$(readlink /usr/lib/libncursesw.so) /usr/lib/libncursesw.so</userinput></screen>
<para>Many applications still expect the linker to be able to find
non-wide-character Ncurses libraries. Trick such applications into linking with
diff --git a/chapter06/procps.xml b/chapter06/procps.xml
index 2deebf10d..0114b1e6b 100644
--- a/chapter06/procps.xml
+++ b/chapter06/procps.xml
@@ -82,9 +82,7 @@ make check</userinput></screen>
<screen><userinput remap="install">mv -v /usr/bin/pidof /bin
mv -v /usr/lib/libprocps.so.* /lib
-ln -sfv ../../lib/libprocps.so.3.0.0 /usr/lib/libprocps.so</userinput></screen>
-
-<!-- Note to devs: check the library version for new releases -->
+ln -sfv ../../lib/$(readlink /usr/lib/libprocps.so) /usr/lib/libprocps.so</userinput></screen>
</sect2>
diff --git a/chapter06/readline.xml b/chapter06/readline.xml
index f56bb7a60..6ad6ecaaa 100644
--- a/chapter06/readline.xml
+++ b/chapter06/readline.xml
@@ -55,7 +55,7 @@ sed -i '/{OLDSUFF}/c:' support/shlib-install</userinput></screen>
<para>Prepare Readline for compilation:</para>
-<screen><userinput remap="configure">./configure --prefix=/usr --libdir=/lib</userinput></screen>
+<screen><userinput remap="configure">./configure --prefix=/usr</userinput></screen>
<para>Compile the package:</para>
@@ -81,17 +81,12 @@ sed -i '/{OLDSUFF}/c:' support/shlib-install</userinput></screen>
<screen><userinput remap="install">make install</userinput></screen>
- <para>Now move the static libraries to a more appropriate location:</para>
+ <para>Now move the dynamic libraries to a more appropriate location
+ and fix up some symbolic links:</para>
-<screen><userinput remap="install">mv -v /lib/lib{readline,history}.a /usr/lib</userinput></screen>
-
- <para>Next, remove the <filename class="extension">.so</filename> files in
- <filename class="directory">/lib</filename> and relink them into <filename
- class="directory">/usr/lib</filename>:</para>
-
-<screen><userinput remap="install">rm -v /lib/lib{readline,history}.so
-ln -sfv ../../lib/libreadline.so.6 /usr/lib/libreadline.so
-ln -sfv ../../lib/libhistory.so.6 /usr/lib/libhistory.so</userinput></screen>
+<screen><userinput remap="install">mv -v /usr/lib/lib{readline,history}.so.* /lib
+ln -sfv ../../lib/$(readlink /usr/lib/libreadline.so) /usr/lib/libreadline.so
+ln -sfv ../../lib/$(readlink /usr/lib/libhistory.so ) /usr/lib/libhistory.so</userinput></screen>
<para>If desired, install the documentation:</para>
diff --git a/chapter06/xz.xml b/chapter06/xz.xml
index 65420b81c..dff29f9ff 100644
--- a/chapter06/xz.xml
+++ b/chapter06/xz.xml
@@ -63,7 +63,7 @@
<screen><userinput remap="install">make install
mv -v /usr/bin/{unlzma,unxz,xzcat,lzma,xz} /bin
mv -v /usr/lib/liblzma.so.* /lib
-ln -svf ../../lib/liblzma.so.&xz-version; /usr/lib/liblzma.so</userinput></screen>
+ln -svf ../../lib/$(readlink liblzma.so) /usr/lib/liblzma.so</userinput></screen>
</sect2>
diff --git a/chapter06/zlib.xml b/chapter06/zlib.xml
index 1dfa3a9bc..2dcc49413 100644
--- a/chapter06/zlib.xml
+++ b/chapter06/zlib.xml
@@ -63,7 +63,7 @@
<filename class="directory">/usr/lib</filename> will need to be recreated:</para>
<screen><userinput remap="install">mv -v /usr/lib/libz.so.* /lib
-ln -sfv ../../lib/libz.so.&zlib-version; /usr/lib/libz.so</userinput></screen>
+ln -sfv ../../lib/$(readlink /usr/lib/libz.so) /usr/lib/libz.so</userinput></screen>
</sect2>