5.27. Bash-3.0

Bash 是 Bourne-Again Shell 的缩写,它在 UNIX 系统中作为 shell 被广泛使用。

预计编译时间: 1.2 SBU
所需磁盘空间: 20.7 MB
安装依赖于: Binutils, Coreutils, Diffutils, Gawk, GCC, Glibc, Grep, Make, Ncurses, Sed

5.27.1. 安装 Bash

在使用较新版本的 Glibc 编译 Bash 会导致系统不恰当挂起的问题,下面这个补丁可以修正它:

patch -Np1 -i ../bash-3.0-avoid_WCONTINUED-1.patch

准备编译 Bash :

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

配置选项的含义:

--without-bash-malloc

这个选项禁用了 Bash 的内存分配函数(malloc),这个函数已知会造成段错误,通过设置这个选项,Bash 将使用更为稳定的 Glibc 里的 malloc 函数。

编译软件包:

make

要测试结果,请运行:make tests

安装软件包:

make install

为那些用 sh 作为 shell 的程序创建符号链接:

ln -vs bash /tools/bin/sh

关于这个软件包的详细资料位于 Section 6.37.2, "Contents of Bash."