10.1 基本的安装
这些是Bash的安装说明。
编译Bash的最简单的方法是:
cd
包含源代码的目录并键入‘./configure’为你的系统配置 Bash。如果你是在旧版本的 System V 上使用csh
,您可能需要输入‘sh ./configure’以防止csh
尝试自己执行configure
。运行
configure
需要一些时间。 在运行过程中,它打印出信息,告诉人们它正在检查哪些功能。- 输入‘make’来编译Bash并构建
bashbug
bug报告脚本。 - 可以选择,输入‘make tests’来运行Bash测试套件。
- 输入 ‘make install’ 来安装
bash
和bashbug
。 这也会安装手册页和 Info 文件、消息翻译文件、一些补充文档、一些可加载的内置命令的例子,以及一套用于开发可加载内置程序的头文件。你可能需要额外的权限来安装bash
到你想要的目的地,所以可能需要‘sudo make install’。 关于控制bash
和其他文件的安装位置的更多信息在下面(见10.4 安装名称)。
这个configure
shell脚本试图猜测在编译过程中使用的各种与系统有关的变量的正确值。它使用这些值在软件包的每个目录(顶层目录、builtins、doc、po和support目录、lib下的每个目录,以及其他一些目录)中创建一个Makefile。它还创建了一个包含系统相关定义的config.h文件。最后,它创建了一个名为config.status
的shell脚本,你可以在将来运行它来重新创建当前的配置,一个config.cache的文件,保存了它的测试结果,以加快重新配置的速度,还有一个config.log的文件,包含编译器输出(主要对调试configure
有用)。如果在某些时候config.cache包含你不想保留的结果,你可以删除或编辑它。
要了解更多关于configure
脚本所能理解的选项和参数的信息,请键入
bash-4.2$ ./configure --help
在你的Bash源目录下的Bash提示符下,点击 "Bash"。
如果你想在一个与源码目录分开的目录中构建Bash,例如为多个架构构建Bash,只需使用配置脚本的完整路径。下面的命令将在/usr/local/build下的目录中从/usr/local/src/bash-4.4的源代码中构建bash。
mkdir /usr/local/build/bash-4.4
cd /usr/local/build/bash-4.4
bash /usr/local/src/bash-4.4/configure
make
请参阅10.3 为多种架构的编译,以了解更多关于在与源码分开的目录中构建的信息。
如果你需要做一些不寻常的事情来编译Bash,请尝试找出configure
如何检查是否做这些事情,并将差异或说明邮寄到bash-maintainers@gnu.org,以便在下一个版本中考虑这些问题。
文件configure.ac被一个叫做Autoconf的程序用来创建configure
。你只需要configure.ac,如果你想改变它或使用较新版本的Autoconf重新生成configure
。如果你这样做,确保你使用Autoconf 2.69或更新的版本。
你可以通过输入‘make clean’来删除源代码目录下的程序二进制文件和对象文件。要同时删除configure
创建的文件(这样你就可以为不同类型的计算机编译Bash),请键入‘make distclean’。