mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-06-24 14:19:21 +01:00
Rewrote chapter 5-bash into new format
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@2304 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
parent
63644a2aaf
commit
78ec17a2dd
@ -1,11 +1,8 @@
|
|||||||
<sect2><title>Contents of Bash</title>
|
<sect2><title>Descriptions</title>
|
||||||
|
|
||||||
<para>Last checked against version &bash-contversion;.</para>
|
<para>Last checked against version &bash-contversion;.</para>
|
||||||
|
|
||||||
<sect3><title>Program Files</title>
|
<sect3><title>ProgramfFiles descriptions</title>
|
||||||
<para>bash, sh (link to bash) and bashbug</para></sect3>
|
|
||||||
|
|
||||||
<sect3><title>Descriptions</title>
|
|
||||||
|
|
||||||
<sect4><title>bash</title>
|
<sect4><title>bash</title>
|
||||||
<para>bash is the Bourne-Again SHell, which is a widely used command
|
<para>bash is the Bourne-Again SHell, which is a widely used command
|
||||||
|
17
appendixa/bash-shortdesc.xml
Normal file
17
appendixa/bash-shortdesc.xml
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
<sect2><title>Contents of Bash</title>
|
||||||
|
|
||||||
|
<para>Last checked against version &bash-contversion;.</para>
|
||||||
|
|
||||||
|
<para>bash is the Bourne-Again SHell, which is a widely used command
|
||||||
|
interpreter on Unix systems. The bash program reads from standard
|
||||||
|
input, the keyboard. A user types something and the program will evaluate
|
||||||
|
what he has typed and do something with it, like running a
|
||||||
|
program.</para>
|
||||||
|
|
||||||
|
<para>Bash installs the following files:</para>
|
||||||
|
|
||||||
|
<sect3><title>Program Files</title>
|
||||||
|
<para>bash, sh (link to bash) and bashbug</para></sect3>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
@ -3,6 +3,7 @@
|
|||||||
<?dbhtml filename="bash.html" dir="appendixa"?>
|
<?dbhtml filename="bash.html" dir="appendixa"?>
|
||||||
|
|
||||||
&aa-bash-down;
|
&aa-bash-down;
|
||||||
|
&aa-bash-shortdesc;
|
||||||
&aa-bash-desc;
|
&aa-bash-desc;
|
||||||
&aa-bash-dep;
|
&aa-bash-dep;
|
||||||
|
|
||||||
|
@ -1,32 +0,0 @@
|
|||||||
<sect2>
|
|
||||||
<title>Command explanations</title>
|
|
||||||
|
|
||||||
<para><userinput>--enable-static-link:</userinput> This configure
|
|
||||||
option causes bash to be linked statically.</para>
|
|
||||||
|
|
||||||
<para><userinput>--prefix=$LFS/static:</userinput> This configure option
|
|
||||||
installs all of Bash's files under the $LFS/static directory, which becomes
|
|
||||||
the /static directory when chroot'ed or reboot'ed into LFS.</para>
|
|
||||||
|
|
||||||
<para><userinput>--with-curses:</userinput> This causes bash to be
|
|
||||||
linked against the curses library instead of the default termcap
|
|
||||||
library which is becoming obsolete.</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 anyways,
|
|
||||||
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 reliably be used
|
|
||||||
there.</para>
|
|
||||||
|
|
||||||
<para>The <userinput>&&</userinput>'s at the end of every line cause
|
|
||||||
the next command to be executed only if the previous command exits
|
|
||||||
with a return value of 0 indicating success. In case all of these
|
|
||||||
commands are copy & pasted on the shell, it is important to ensure
|
|
||||||
that if ./configure fails, make isn't executed and, likewise, if make
|
|
||||||
fails, that make install isn't executed, and so forth.</para>
|
|
||||||
|
|
||||||
</sect2>
|
|
||||||
|
|
@ -12,21 +12,56 @@ development package. This package is often called something like
|
|||||||
<emphasis>ncurses-dev</emphasis> or <emphasis>ncurses-static</emphasis>. If
|
<emphasis>ncurses-dev</emphasis> or <emphasis>ncurses-static</emphasis>. If
|
||||||
this package is already installed, or you just installed it, check for the
|
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)
|
two files again. Often the <filename>libcurses.a</filename> file is (still)
|
||||||
missing. If so, then create <filename>libcurses.a</filename> as a symlink
|
missing. If so, create <filename>libcurses.a</filename> as a symlink
|
||||||
by running the following commands as user root:</para>
|
by running the following commands as user <emphasis>root:</emphasis></para>
|
||||||
|
|
||||||
<para><screen><userinput>ln -s libncurses.a /usr/lib/libcurses.a</userinput></screen></para>
|
<para><screen><userinput>ln -s libncurses.a /usr/lib/libcurses.a</userinput></screen></para>
|
||||||
|
|
||||||
<para>Now we can continue. Install Bash by running the following
|
<para>Now we can really start. Prepare Bash to be compiled by running the
|
||||||
commands:</para>
|
following command:</para>
|
||||||
|
|
||||||
|
|
||||||
<para><screen><userinput>./configure --enable-static-link \
|
<para><screen><userinput>./configure --enable-static-link \
|
||||||
--prefix=$LFS/static --with-curses &&
|
--prefix=$LFS/static --with-curses</userinput></screen></para>
|
||||||
make &&
|
|
||||||
make install</userinput></screen></para>
|
<para>The meaning of the configure switches are:</para>
|
||||||
|
|
||||||
|
<itemizedlist>
|
||||||
|
<listitem><para><userinput>--enable-static-link:</userinput> This option
|
||||||
|
caused 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 $LFS/static directory, which becomes
|
||||||
|
the /static directory when chroot'ed or reboot'ed into
|
||||||
|
LFS.</para></listitem>
|
||||||
|
|
||||||
|
<listitem><para><userinput>--with-curses:</userinput> This option caused
|
||||||
|
bash to be linked against the curses library instead of the default termcap
|
||||||
|
library which is being phased out and 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 anyways,
|
||||||
|
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 reliably be used
|
||||||
|
there.</para></listitem>
|
||||||
|
</itemizedlist>
|
||||||
|
|
||||||
|
<para>Now we can continue 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
|
<para>If the <userinput>make install</userinput> phase ends with something
|
||||||
along the lines of this:</para>
|
along the lines of the following:</para>
|
||||||
|
|
||||||
<blockquote><screen>install-info: unknown option `--dir-file=/mnt/lfs/usr/info/dir'
|
<blockquote><screen>install-info: unknown option `--dir-file=/mnt/lfs/usr/info/dir'
|
||||||
usage: install-info [--version] [--help] [--debug] [--maxwidth=nnn]
|
usage: install-info [--version] [--help] [--debug] [--maxwidth=nnn]
|
||||||
@ -40,11 +75,11 @@ make[1]: Leaving directory `/mnt/lfs/usr/src/bash-&bash-version;/doc'
|
|||||||
make: [install] Error 2 (ignored)</screen></blockquote>
|
make: [install] Error 2 (ignored)</screen></blockquote>
|
||||||
|
|
||||||
<para>then that means that you are probably using Debian-2.2 (potato), and
|
<para>then that means that you are probably using Debian-2.2 (potato), and
|
||||||
that you have an old version of the texinfo package. This error is not
|
that you have an old version of the texinfo package and the info pages
|
||||||
severe by any means: the info pages will be installed when we recompile bash
|
can't be installed at this time. This error is not a problem as the info
|
||||||
dynamically in Chapter 6, so you can ignore it. It is reported that the
|
pages will be installed when we recompile bash dynamically in Chapter 6, so
|
||||||
current release of Debian (3.0; also known as Woody) doesn't have this
|
you can ignore it. It is reported that the current release of Debian
|
||||||
problem.</para>
|
(3.0; also known as Woody) doesn't have this problem.</para>
|
||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
@ -5,10 +5,9 @@
|
|||||||
<screen>Estimated build time: &bash-time-static;
|
<screen>Estimated build time: &bash-time-static;
|
||||||
Estimated required disk space: &bash-compsize-static;</screen>
|
Estimated required disk space: &bash-compsize-static;</screen>
|
||||||
|
|
||||||
&c5-bash-inst;
|
&aa-bash-shortdesc;
|
||||||
&c5-bash-exp;
|
|
||||||
&aa-bash-desc;
|
|
||||||
&aa-bash-dep;
|
&aa-bash-dep;
|
||||||
|
&c5-bash-inst;
|
||||||
|
|
||||||
</sect1>
|
</sect1>
|
||||||
|
|
||||||
|
@ -2,9 +2,7 @@
|
|||||||
<title>Installing Glibc-&glibc-version;</title>
|
<title>Installing Glibc-&glibc-version;</title>
|
||||||
<?dbhtml filename="glibc.html" dir="chapter06"?>
|
<?dbhtml filename="glibc.html" dir="chapter06"?>
|
||||||
|
|
||||||
<screen>Download location: <ulink url="ftp://ftp.gnu.org/gnu/glibc/"/>
|
<screen>Estimated build time: &glibc-time;
|
||||||
Download location (patch): <ulink url="&http;/"/>
|
|
||||||
Estimated build time: &glibc-time;
|
|
||||||
Estimated required disk space: &glibc-compsize;</screen>
|
Estimated required disk space: &glibc-compsize;</screen>
|
||||||
|
|
||||||
&aa-glibc-shortdesc;
|
&aa-glibc-shortdesc;
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
<!ENTITY c6-bash-inst SYSTEM "../chapter06/bash-inst.xml">
|
<!ENTITY c6-bash-inst SYSTEM "../chapter06/bash-inst.xml">
|
||||||
|
|
||||||
<!ENTITY aa-bash SYSTEM "../appendixa/bash.xml">
|
<!ENTITY aa-bash SYSTEM "../appendixa/bash.xml">
|
||||||
|
<!ENTITY aa-bash-shortdesc SYSTEM "../appendixa/bash-shortdesc.xml">
|
||||||
<!ENTITY aa-bash-desc SYSTEM "../appendixa/bash-desc.xml">
|
<!ENTITY aa-bash-desc SYSTEM "../appendixa/bash-desc.xml">
|
||||||
<!ENTITY aa-bash-dep SYSTEM "../appendixa/bash-dep.xml">
|
<!ENTITY aa-bash-dep SYSTEM "../appendixa/bash-dep.xml">
|
||||||
<!ENTITY aa-bash-down SYSTEM "../appendixa/bash-down.xml">
|
<!ENTITY aa-bash-down SYSTEM "../appendixa/bash-down.xml">
|
||||||
|
@ -4,8 +4,8 @@
|
|||||||
|
|
||||||
<!ENTITY book SYSTEM "book/book.xml">
|
<!ENTITY book SYSTEM "book/book.xml">
|
||||||
|
|
||||||
<!ENTITY version "20030110">
|
<!ENTITY version "20030111">
|
||||||
<!ENTITY releasedate "January 10th, 2003">
|
<!ENTITY releasedate "January 11th, 2003">
|
||||||
|
|
||||||
<!ENTITY ftp-root "ftp://ftp.linuxfromscratch.org">
|
<!ENTITY ftp-root "ftp://ftp.linuxfromscratch.org">
|
||||||
<!ENTITY http-root "http://ftp.linuxfromscratch.org">
|
<!ENTITY http-root "http://ftp.linuxfromscratch.org">
|
||||||
|
Loading…
Reference in New Issue
Block a user