1996年8月13日(火)

GCCのインストール成功に気を良くして、GCCの動作テストも兼ねてbashの インストールに挑戦する。

まず bash-1.05のソース をゲット。README,README.1,INSTALLの各ファイルに目を通して必要と思われ る修正(machines.h,cpp-Makefile)を施してから、おもむろにmake...。

ところが、varargs.h,sys/file.h等々のヘッダファイルが無いとの事でコ ンパイルエラーが発生しまくる。どうも、GCC関係のインクルードファイルの インストールが不完全らしい(--;)。

そこで、 インクルードファイルのインストール を以下のようにやり直す。

  1. include.tar.gz をゲットし、/tmp/includeに展開
  2. cd /usr/gnu/lib/gcc-include;cpdir -msv . /tmp/include
  3. cd /tmp/include;cpdir -msv . /usr/gnu/lib/gcc-include
  4. rm -fr /tmp/include

この後、若干のソース修正は有ったものの無事コンパイル完了となるv(^^)。

いざコマンドラインからbashを起動すると、

gethostname: can't open /etc/uucpname

とつれない返事(^^;。メッセージを便りにソースを眺めて見ると、 /etc/uucpnameにホスト名を書き込む必要が有るよう。とりあえず minix01 と する。

今度は無事コマンドラインからbashを起動し、CNTL-P,CNTL-Nでヒストリー の上下行、CNTL-B, CNTL-F,CNTL-D等で行編集が出来る事を確認(感涙)。

ところが、historyコマンド(ビルトイン)を実行したところ、あえなくコア ダンプ(T_T)...。気を取り直して、落ちた場所を調べようとして、はたと思う、 「MINIXってデバッガあったっけ?」

結局デバッガは見つからずに、printfデバッグを強行する(^^;。その結果、 builtins.cの中でコアを吐く場所を発見。でも、どうも元バグのよう(NULLの 可能性の有る構造体へのポインタを常に参照している)。とりあえず修正を施 し、再度make&正常動作を確認(^^)。

その後、/etc/passwdを修正しログインシェルをbashに交換し、 examples/Bash_profileを元に~/.bash_profile,examples/Bashrcを元に~ /.bashrcを作成する。

うーん結構快適d(^^)。

で、私の施した全ての修正(パッチ)は こちら ですm(__)m。

なお、上記パッチは以下のようにして当てて下さい。

  1. % cd bashのソースディレクトリ
  2. % patch -p1 < bash.cdif

[前頁] [次頁]
Return
introduction of kyoto internet people
[更新]