10.9 Mavericksにアップデートしてbrew installしたらエラー出た

OSをMavericksにアップデートしてからHomebrewでパッケージをインストールすると下のスクリーンショットのようなエラーが出ました。
スクリーンショット

エラー内容は

Error: lftp dependency readline was built with the following
C++ standard library: libstdc++ (from clang)

This is incompatible with the standard library being used
to build lftp: libc++ (from clang)

Please reinstall readline using a compatible compiler.
hint: Check https://github.com/Homebrew/homebrew/wiki/C++-Standard-Libraries

とのこと。

ヒントって書いてあるリンク先を読むと、Mavericksとそれ以前ではコンパイル時に使用するC++の標準ライブラリの種類が違うらしく、新しくインストールするパッケージが、OSアップデート前にビルドしたパッケージに依存していると不具合があるから、昔インストールしたパッケージは再インストールしてねということだった。

さらにリンク先には、以前インストールしたパッケージを全て再インストールするコマンドを吐き出してくれるRubyのプログラムのソースが貼ってあったので、それを使えば楽そう。
そのRubyソース→generate-homebrew-install-commands.rb(Gist)

このgenerate-homebrew-install-commands.rbを実行したところ、
brew reinstall -v hoge
brew reinstall -v piyo
brew reinstall -v fuga

といったコマンドの羅列が出力されるものだったので、ソースを落として以下のコマンドを実行すると一発で全部再インストールされるはず。

もりしん(@morishin127)


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です