bash.xml 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2. <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
  3. "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  4. <!ENTITY % general-entities SYSTEM "../general.ent">
  5. %general-entities;
  6. ]>
  7. <sect1 id="ch-tools-bash" role="wrap">
  8. <?dbhtml filename="bash.html"?>
  9. <sect1info condition="script">
  10. <productname>bash</productname>
  11. <productnumber>&bash-version;</productnumber>
  12. <address>&bash-url;</address>
  13. </sect1info>
  14. <title>Bash-&bash-version;</title>
  15. <indexterm zone="ch-tools-bash">
  16. <primary sortas="a-Bash">Bash</primary>
  17. <secondary>tools</secondary>
  18. </indexterm>
  19. <sect2 role="package">
  20. <title/>
  21. <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
  22. href="../chapter06/bash.xml"
  23. xpointer="xpointer(/sect1/sect2[1]/para[1])"/>
  24. <segmentedlist>
  25. <segtitle>&buildtime;</segtitle>
  26. <segtitle>&diskspace;</segtitle>
  27. <seglistitem>
  28. <seg>&bash-ch5-sbu;</seg>
  29. <seg>&bash-ch5-du;</seg>
  30. </seglistitem>
  31. </segmentedlist>
  32. </sect2>
  33. <sect2 role="installation">
  34. <title>Installation of Bash</title>
  35. <para>Apply fixes for several bugs discovered since the initial release of
  36. Bash-&bash-version;:</para>
  37. <screen><userinput remap="pre">patch -Np1 -i ../&bash-fixes-patch;</userinput></screen>
  38. <para>Prepare Bash for compilation:</para>
  39. <screen><userinput remap="configure">./configure --prefix=/tools --without-bash-malloc \
  40. ac_cv_func_working_mktime=yes</userinput></screen>
  41. <variablelist>
  42. <title>The meaning of the configure options:</title>
  43. <varlistentry>
  44. <term><parameter>--without-bash-malloc</parameter></term>
  45. <listitem>
  46. <para>This option turns off the use of Bash's memory allocation
  47. (<function>malloc</function>) function which is known to cause
  48. segmentation faults. By turning this option off, Bash will use
  49. the <function>malloc</function> functions from Glibc which are
  50. more stable.</para>
  51. </listitem>
  52. </varlistentry>
  53. <varlistentry>
  54. <term><parameter>ac_cv_func_working_mktime=yes</parameter></term>
  55. <listitem>
  56. <para>This parameter bypasses the search for mktime in configure
  57. and uses the version in glibc. The is necessary due to a change in
  58. gcc that has not been incorporated into this package yet.</para>
  59. </listitem>
  60. </varlistentry>
  61. </variablelist>
  62. <para>Compile the package:</para>
  63. <screen><userinput remap="make">make</userinput></screen>
  64. <para>Compilation is now complete. As discussed earlier, running the test
  65. suite is not mandatory for the temporary tools here in this chapter. To run
  66. the Bash test suite anyway, issue the following command:</para>
  67. <screen><userinput remap="test">make tests</userinput></screen>
  68. <para>Install the package:</para>
  69. <screen><userinput remap="install">make install</userinput></screen>
  70. <para>Make a link for the programs that use <command>sh</command> for
  71. a shell:</para>
  72. <screen><userinput remap="install">ln -vs bash /tools/bin/sh</userinput></screen>
  73. </sect2>
  74. <sect2 role="content">
  75. <title/>
  76. <para>Details on this package are located in
  77. <xref linkend="contents-bash" role="."/></para>
  78. </sect2>
  79. </sect1>