きりかノート 3冊め

おあそびプログラミング

MacPortのrubyをruby-1.8.7-p330, ruby-1.9.2-p136に更新

1.8.7、1.9.2ともにクリスマスリリースがでたので更新しました。

今回ちょっと手間取ったのが、1.9.2をupgradeしようとするとactivate時に${prefix}/lib/ruby1.9/gems/1.9.1/specifications/rake-0.8.7.gemspecがすでにあるから上書きしたければ-fしてね、的なエラーになること(メッセージコピー忘れ、、)。

たぶん原因は[ruby-core:32165]で、ruby-1.9.2に含まれるrakeとなんかのはずみでgemコマンドからインストールされたrakeの2つがある状態になってしまって、macports的にはバージョンなしの.gemspecだけがruby19 (1.9.2-p0)パッケージのファイルなんだけど、これが修正されてp136ではバージョン付きの.gemspecファイルもインストールしようとするために起きる。

対処としてactivate前に該当のファイルがあったら一度削除するようにした。
最初は"gem1.9 unisntall rakeしてね"というメッセージを出して中止するようにしようかと思ったんだけど、自動で処理されたほうがユーザ的にはいいよなあと思い直してそうしました。