* Fixed problem when BASEDIR paths were given without a trailing '/'.
[linux_from_scratch.git] / newxml / chapter06 / bash.xml
blobaf2acf4b52035300ef802e847d2c5e6bb9ed0329
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
3   <!ENTITY % general-entities SYSTEM "../general.ent">
4   %general-entities;
5 ]>
6 <sect1 id="ch-system-bash" xreflabel="Bash">
7 <title>Bash-&bash-version;</title>
8 <?dbhtml filename="bash.html"?>
10 <indexterm zone="ch-system-bash"><primary sortas="a-Bash">Bash</primary></indexterm>
12 <para>The Bash package contains the Bourne-Again SHell.</para>
14 <screen>Approximate build time:  1.2 SBU
15 Required disk space:     27 MB</screen>
17 <para>Bash installation depends on: Binutils, Coreutils, Diffutils, Gawk,
18 GCC, Glibc, Grep, Make, Ncurses, Sed.</para>
22 <sect2>
23 <title>Installation of Bash</title>
25 <para>Bash has a number of bugs in it that cause it to not behave the 
26 way it is expected at times. Fix this behavior with the following
27 patch:</para>
29 <screen><userinput>patch -Np1 -i ../bash-&bash-version;-2.patch</userinput></screen>
31 <para>Now prepare Bash for compilation:</para>
33 <screen><userinput>./configure --prefix=/usr --bindir=/bin</userinput></screen>
35 <para>Compile the package:</para>
37 <screen><userinput>make</userinput></screen>
39 <para>To test the results, issue:
40 <userinput>make tests</userinput>.</para>
42 <para>Install the package:</para>
44 <screen><userinput>make install</userinput></screen>
46 <para>Now run the newly compiled <command>bash</command> program (replacing the one you are currently executing):</para>
48 <screen><userinput>exec /bin/bash --login +h</userinput></screen>
50 <para>Note that the parameters used make it an interactive login instance
51 (so /etc/profile is read, if it exists, and the first found
52 ~/.bash_profile, ~/.bash_login or and ~/.profile) and continue to
53 disable hashing so that new programs are found as they become
54 available.</para>
56 </sect2>
59 <sect2 id="contents-bash"><title>Contents of Bash</title>
61 <para><emphasis>Installed programs</emphasis>: bash, sh (link to bash) and
62 bashbug</para>
64 </sect2>
67 <sect2><title>Short descriptions</title>
69 <indexterm zone="ch-system-bash bash"><primary sortas="b-bash">bash</primary></indexterm>
70 <para id="bash"><command>bash</command> is a widely-used command interpreter. It
71 performs many kinds of expansions and substitutions on a given command line
72 before executing it, thus making this interpreter a powerful tool.</para>
74 <indexterm zone="ch-system-bash bashbug"><primary sortas="b-bashbug">bashbug</primary></indexterm>
75 <para id="bashbug"><command>bashbug</command> is a shell script to help the user
76 compose and mail bug reports concerning bash in a standard format.</para>
78 <indexterm zone="ch-system-bash sh"><primary sortas="b-sh">sh</primary></indexterm>
79 <para id="sh"><command>sh</command> is a symlink to the bash program. When invoked
80 as sh, bash tries to mimic the startup behavior of historical versions of sh as
81 closely as possible, while conforming to the POSIX standard as well.</para>
83 </sect2>
87 </sect1>