きりかノート 3冊め

おあそびプログラミング

RubyCocoa 今日のコミット standaloneifyの修正 2012-10-11

うん、まあ、あれです。確認不足ですね、ほんとゴメンナサイ。

standaloneify.rbが動かないケースがいくつかあったので直しました。

  • 通常のXcodeでのビルド等ですでにアプリにRubyCocoa.frameworkが組み込まれているとき動かない問題を修正 (r2401)
  • アプリがgemを要求し、実行環境のRubyGemsのバージョンが1.3.2以降だと動かない問題を修正 (r2402-2403)

後者についてちょっと補足。必要なgemを取得するために、Gem::Specification.listというメソッドが使われているんだけど、このメソッドは1.3.2で削除されていたのでした。で、Mac OS X 10.8 Mountain LionのRubyGemsは1.3.6 (これもまた微妙なバージョンな気もするけど…)なのでダメということ。

対処として現在のAPIのGem:Specification.eachを使うように直しました。なんだけど、1.3.6にはこのメソッドはないので、必要に応じて

   % sudo /usr/bin/gem update --system

で、新しめのRubyGemsを導入してください。1.3.6で対応する方法をちょっとは模索したけど無理でした。

RubyGems 1.3.1以前の従来から利用できていたバージョンはそのまま使うことができますので、この更新は不要です。

たぶん将来的には、bundlerのように明示的にライブラリを指定するツールに置き換えるべきなんじゃないかと思いました>standaloneify.rb。てか誰か作って!