5.15. Bash-3.2

Bash 是 Bourne-Again Shell 的缩写。

预计编译时间: 0.4 SBU
所需磁盘空间: 22 MB

5.15.1. 安装 Bash

应用下面补丁修复自 Bash-3.2 正式发布以来的一些 bug:



patch -Np1 -i ../bash-3.2-fixes-8.patch


配置 Bash,为编译做准备:



./configure --prefix=/tools --without-bash-malloc \


   ac_cv_func_working_mktime=yes


配置选项的含义:

--without-bash-malloc

该选项关闭 Bash 的内存分配函数(malloc,已知该函数会导致段错误。关闭了该选项之后,Bash 会使用更为稳定的、由 Glibc 提供的malloc 函数。)

ac_cv_func_working_mktime=yes

这个参数是在配置过程中绕过对 mktime 的搜索,改为使用在 glibc 中的版本。这样做的需要的原因是,有一个 gcc 的变化,但本软件包还没有包括进来。

Compile the package:



make


现在编译完成了,同前面一样,在本章为了一个临时工具运行测试程序不是强制的。如果想运行测试套件,使用下列命令:



make tests


安装该软件包:



make install


为那些使用 sh 作为其 Shell 的软件创建链接:



ln -vs bash /tools/bin/sh


关于这个软件包的详细资料位于第 6.30.2 节 “Bash 的内容”


Host by Unixetc