aboutsummaryrefslogtreecommitdiffstats
path: root/chapter05/bash-inst.xml
diff options
context:
space:
mode:
Diffstat (limited to 'chapter05/bash-inst.xml')
-rw-r--r--chapter05/bash-inst.xml67
1 files changed, 6 insertions, 61 deletions
diff --git a/chapter05/bash-inst.xml b/chapter05/bash-inst.xml
index 83fc8b694..e9dbd6197 100644
--- a/chapter05/bash-inst.xml
+++ b/chapter05/bash-inst.xml
@@ -3,68 +3,13 @@
<sect2>
<title>Installation of Bash</title>
-<para>Before you attempt to install Bash, you have to check to make sure
-your distribution has the <filename>/usr/lib/libcurses.a</filename> and
-<filename>/usr/lib/libncurses.a</filename> files. If your host
-distribution is an LFS system, all files will be present if you followed
-the instructions of the book version you read exactly.</para>
+<para><screen><userinput>CFLAGS="-O2 -pipe" ./configure --prefix=/stage1 \
+&nbsp;&nbsp;&nbsp;&nbsp;--with-curses --without-bash-malloc
+make LDFLAGS="-s"
+make tests
+make install
+ln -s bash /stage1/bin/sh</userinput></screen></para>
-<para>If both of the files are missing, you have to install the Ncurses
-development package. This package is often called something like
-<emphasis>ncurses-dev</emphasis> or <emphasis>ncurses-static</emphasis>. If
-this package is already installed, or you just installed it, check for the
-two files again. Often the <filename>libcurses.a</filename> file is (still)
-missing. If so, create <filename>libcurses.a</filename> as a symlink
-by running the following command as user <emphasis>root:</emphasis></para>
-
-<para><screen><userinput>ln -s libncurses.a /usr/lib/libcurses.a</userinput></screen></para>
-
-<para>Now we can really start. Prepare Bash to be compiled by running the
-following command:</para>
-
-
-<para><screen><userinput>./configure --enable-static-link \
-&nbsp;&nbsp;&nbsp;&nbsp;--prefix=$LFS/static --with-curses</userinput></screen></para>
-
-<para>The meaning of the configure options are:</para>
-
-<itemizedlist>
-<listitem><para><userinput>--enable-static-link</userinput>: This option
-causes the <userinput>bash</userinput> program to be statically
-linked.</para></listitem>
-
-<listitem><para><userinput>--prefix=$LFS/static</userinput>: This option
-installs all of Bash's files under the
-<filename class="directory">$LFS/static</filename> directory, which becomes
-the <filename class="directory">/static</filename> directory when chroot'ed
-or reboot'ed into LFS.</para></listitem>
-
-<listitem><para><userinput>--with-curses</userinput>: This option causes
-<filename>bash</filename> to be linked against the curses library instead
-of the default termcap library which has become obsolete. Note, on most
-all Linux systems, the curses library is provided by the Ncurses
-package (so in truth we link against the ncurses library).</para>
-
-<para>It is not strictly necessary for the static bash to be linked
-against libncurses (it can link against a static termcap for the time
-being just fine because we will reinstall Bash in Chapter 6 anyway,
-where we will use libncurses), but it's a good test to make sure that
-the Ncurses package has been installed properly. If not, you will get in
-trouble later on in this chapter when you install the Texinfo package.
-That package requires ncurses, and termcap can't be used
-there.</para></listitem>
-</itemizedlist>
-
-<para>Now we can continue with compiling Bash:</para>
-
-<para><screen><userinput>make</userinput></screen></para>
-
-<para>And finish off the installation by installing Bash:</para>
-
-<para><screen><userinput>make install</userinput></screen></para>
-
-<para>If the <userinput>make install</userinput> phase ends with something
-along the lines of the following:</para>
<blockquote><screen>install-info: unknown option `--dir-file=/mnt/lfs/usr/info/dir'
usage: install-info [--version] [--help] [--debug] [--maxwidth=nnn]