Homebrewに色々なパッケージをインストールしていたところ、突然以下のようなエラーメッセージがターミナルに現れ、ターミナル(zsh)が起動しなくなってしまいました。
dyld: Library not loaded: /usr/local/lib/libgdbm.4.dylib
Referenced from: /usr/local/bin/zsh
Reason: image not found
[プロセスが完了しました]
ターミナルが使えなくなってしまったため何もすることができず、正直パニックになりました。しかし、ある方が同じエラーについてブログを書いており非常に役に立ったため、Qiitaにも同様の解決方法を記載しておきます。
1. zshからbashに変更する
ターミナルが起動しない限り、なんの対処もできないため、まずはターミナル⇒環境設定⇒一般⇒開くシェル⇒コマンド(完全パス)と移動し、パスを/bin/bashに変更します。
そうすることで、bashを用いてターミナルを起動させることができます。
2. 不足しているライブラリを追加
不足しているライブラリを追加するためにはwgetが必要なので、homebrewを使ってインストールします。
$ brew install wget
次にGDBMをダウンロードし、makeする過程に移ります。
GDBMパッケージは GNU DBM ライブラリがあるので、ダウンロードし、解凍します。
$ wget ftp://ftp.gnu.org/pub/gnu/gdbm/gdbm-1.9.1.tar.gz
$ tar zxfv gdbm-1.9.1.tar.gz
最後にmakeしてインストールすることで、再びzshでターミナルを起動することができます。
$ cd gdbm-1.9.1
$ ./configure --prefix=/usr/local
$ make
$ make install
※ bashからzshに戻すのを忘れずに。
参考
[teminalが動かなくなってしまいました - umegusa's blog 備忘録] (http://umegusa.hatenablog.jp/entry/2012/07/21/155637)