きりかノート 3冊め

おあそびプログラミング

MacPortsのMac OS X 10.9 Mavericks対応について(10/24現在)

(10/26 追記)Mavericks対応のMacPorts-2.2.1がリリースされました。個別のportのバグレポートは引き続きお待ちしています。

(10/30 追記)ソースファイル(distfiles)配布サイトで、通信速度のえらい遅いサーバがあります。ダウンロードがすごく遅い、と感じている人は、macports.confでそれを使わないよう設定することで解消するかもしれません。(MacPortsスレの人、host_blacklist教えてくれてありがとう!)

設定例:

   host_blacklist	cjj.kr.distfiles.macports.org \
                   aarnet.au.distfiles.macports.org

(以下本文)

案の定というか、まだ対応してないらしいので。対処方法の案内とバグ報告のお願いです。

  • すぐに使いたい場合は、MacPorts本体をtrunkのソースからインストールしてください。(手順は後述)
    • 既存のシステムに上書きインストールした場合もインストールと同様にport環境を上書きします。インストール済みのportはそのまま残ります。
  • MacPorts Wikiの"MavericksProblems"に問題のあるportやチケットについて書かれています。

既存のシステムから10.9に更新した場合は、MacPorts Wikiの"Migration"にあるように各portを再インストールするのが正道ですが、基本的にバイナリはそのまま動くので問題が起きていないportはしばらくは更新(upgrade)せずに使うのがよいかと思います。portの再インストールがうまくいかなくて環境が壊れてしまったとき、Timemachineで/opt/localをバックアップしてたりしないとリカバリが大変です。結局ゼロから入れ直すはめになること請け合いです。

ソースからtrunkをインストールする

すぐに使いたいひと向けのインストール手順。

   ### コンパイラやsubversion等の開発ツール(Command Line Tools)を入手
   % xcode-select --install
   ### ライセンス認証します。提示されたライセンスを読んだら
   ### 指示に従って agree を入力してENTER
   % sudo xcodebuild -license
   ### ソースコードを取ってきて、ビルド・インストールします
   % svn checkout https://svn.macports.org/repository/macports/trunk MacPorts
   % cd MacPorts
   % ./configure && make
   % sudo make install
   ### port treeを最新にします
   % sudo port selfupdate

私が担当してる、ruby20, ruby19, rubyはインストールが正常にできること、make test-allが(1.8はそれなりに)通ることを確認済みです。ついでに、よく問題が起きるw3mも簡単に動作確認しました。

問題に直面したとき

"MavericksProblems"に問題のportが記載されいているかどうかを確認してください。登録済みかどうかによって次のステップが変わります。

チケットが登録済み

基本的には修正されるのを待つしかありません。もしパッチが用意できた場合はチケットに添付してください。

また、メンテナがいないportのとき、たとえば

   % port info --maintainers rb19-nokogiri
   maintainers: nomaintainer@macports.org

のように、"nomaintainer"となっているものはportに担当者がついていません。この場合は、解決に時間がかかることが予想されます。コミット権を持っている人に知らせて修正を依頼するのがよいでしょう。

などすることで早期に対応される可能性が上がります。

チケットが未登録

お手数ですが、 https://trac.macports.org からチケットを登録してください(参考:チケットの書き方)。その際にキーワードに"mavericks"を入れると"MavericksProblems"ページに表示されるので情報がまとまります。