Bash は Bourne-Again SHell を提供します。
まずはアップストリームにより提供されている以下のパッチを適用し、種々のバグを修正します。
patch -Np1 -i ../bash-4.2-fixes-8.patch
Bash をコンパイルするための準備をします。
./configure --prefix=/usr \ --bindir=/bin \ --htmldir=/usr/share/doc/bash-4.2 \ --without-bash-malloc \ --with-installed-readline
configure オプションの意味:
--htmldir
このオプションは HTML ドキュメントをインストールするディレクトリを指定します。
--with-installed-readline
このオプションは Bash が持つ独自の readline
ライブラリではなく、既にインストールした readline
ライブラリを用いることを指示します。
パッケージをコンパイルします。
make
テストスィートを実行しない場合は「パッケージをインストールします。」と書かれた箇所まで読み飛ばしてください。
テストを実施するにあたっては nobody
ユーザーによるソースツリーへの書き込みを可能とします。
chown -Rv nobody .
nobody
ユーザーでテストを実行します。
su nobody -s /bin/bash -c "PATH=$PATH make tests"
パッケージをインストールします。
make install
新たにコンパイルした bash プログラムを実行します。(この時点までに実行されていたものが置き換えられます。)
exec /bin/bash --login +h
ここで指定しているパラメーターは、対話形式のログインシェルとして、またハッシュ機能を無効にして bash プロセスを起動します。 これにより新たに構築するプログラム類は構築後すぐに利用できることになります。