MacPorts (Snow Leopard) でPHP 5.2.13をインストールしようとしたらエラー → 一応解決

The Robot compilando unas patatas y friendo un compilador de Haskell, o no sé qué
Creative Commons License photo credit: sporras

※ 2010.6.3 追記
現在は問題なくインストールできるようです。

MacPorts (Snow Leopard)を使ってPHP5.2.13をインストールしようとしたら次のようなエラーが発生してしまいました。

色々調べてみたところ、gettextというパッケージが悪さをしていることが判明しました。

どうやら、gettextのバージョンを0.18から0.17に下げる必要があるみたい。

以下のコマンドを実行し、gettextをダウングレードします。
(参考:【port / MacPorts】古いバージョンのパッケージをインストールする方法 sakatam blog

gettextをダウングレードしたので、gettextパッケージに依存しているすべてのパッケージをリビルドする必要があります。

autoconfが依存するgawkというパッケージに関しては、MacPortsでインストールされるのが少し古いバージョンなので、アンインストールしてシステムにデフォルトでインストールされているものが使われるようにします。

他のパッケージもリビルドしていきます。

これでインストールの準備は完了、と言いたいところですが、まだしなければいけないことがあります。

このままMacPortsでインストールを実行するとautoconfの部分でエラーが発生してしまうので、手動でautoconfを実行しなければなりません。
MacPortsでインストールしたautoconfを使っていることがエラーの原因なので、システムにデフォルトでインストールされているautoconfを使ってコンフィグレーションファイルを作成します。

さらに、手動で./configureも実行してしまいます。

# めちゃくちゃ長いコマンドです。MacPortsによる自動インストールの時に実行されるコマンドと全く同じものです。
# このコマンドはphp52パッケージインストール時に指定するvariantsによって変わってきます。(下の例は僕の場合)
# 実際のコマンドは「port -d configure php52 <variants>  」を実行した時の出力で確認することができます。

これでようやくPHPをインストールする準備が整いました。
以下のコマンドを実行して、PHP 5.2.13をインストールします。

エラーが表示されなければ、無事インストール完了です。

autoconfのあたりが少々スマートじゃないですが、一時的な対応策ということでよしということにしておきます。
早く、gettextの開発者が対応してくれるといいですね!

それでは!