<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  <!ENTITY % general-entities SYSTEM "../general.ent">
  %general-entities;
]>

<sect1 id="ch-tools-bash" role="wrap">
  <?dbhtml filename="bash.html"?>

  <sect1info condition="script">
    <productname>bash</productname>
    <productnumber>&bash-version;</productnumber>
    <address>&bash-url;</address>
  </sect1info>

  <title>Bash-&bash-version;</title>

  <indexterm zone="ch-tools-bash">
    <primary sortas="a-Bash">Bash</primary>
    <secondary>tools</secondary>
  </indexterm>

  <sect2 role="package">
    <title/>

    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
    href="../chapter06/bash.xml"
    xpointer="xpointer(/sect1/sect2[1]/para[1])"/>

    <segmentedlist>
      <segtitle>&buildtime;</segtitle>
      <segtitle>&diskspace;</segtitle>

      <seglistitem>
        <seg>&bash-ch5-sbu;</seg>
        <seg>&bash-ch5-du;</seg>
      </seglistitem>
    </segmentedlist>

  </sect2>

  <sect2 role="installation">
    <title>安装 Bash</title>
<!--
    <para>First, apply the following patch to fix various bugs that have been
    addressed upstream:</para>

<screen><userinput remap="pre">patch -Np1 -i ../&bash-fixes-patch;</userinput></screen>
-->
    <para>准备编译 Bash：</para>

<screen><userinput remap="configure">./configure --prefix=/tools --without-bash-malloc</userinput></screen>

    <variablelist>
      <title>配置选项的含义：</title>

      <varlistentry>
        <term><parameter>--without-bash-malloc</parameter></term>
        <listitem>
          <!--para>This option turns off the use of Bash's memory allocation
          (<function>malloc</function>) function which is known to cause
          segmentation faults. By turning this option off, Bash will use
          the <function>malloc</function> functions from Glibc which are
          more stable.</para-->
	      <para>该选项禁用 Bash 自己的内存分配
			  （<function>malloc</function>）函数，因为已知它会导致段错误。
			  这样，Bash 就会使用 Glibc 的更加稳定的
			  <function>malloc</function> 函数。</para>
        </listitem>
      </varlistentry>

    </variablelist>

    <para>编译该软件包：</para>

<screen><userinput remap="make">make</userinput></screen>

    <!--para>Compilation is now complete. As discussed earlier, running the test
    suite is not mandatory for the temporary tools here in this chapter. To run
    the Bash test suite anyway, issue the following command:</para-->
    <para>现在编译已经完成。正如前文所述，
		没有必要在本章中运行临时工具的测试套件。如果一定要运行 Bash
		的测试套件，执行以下命令：</para>


<screen><userinput remap="test">make tests</userinput></screen>

    <para>安装该软件包：</para>

<screen><userinput remap="install">make install</userinput></screen>

    <!--para>Make a link for the programs that use <command>sh</command> for
    a shell:</para-->
    <para>为那些使用 <command>sh</command> 命令运行 shell 的程序考虑，
		创建一个链接：</para>

<screen><userinput remap="install">ln -sv bash /tools/bin/sh</userinput></screen>

  </sect2>

  <sect2 role="content">
    <title/>

    <para>该软件包的详细信息可以在
		<xref linkend="contents-bash"/> 中找到。</para>

  </sect2>

</sect1>
