Hatena::ブログ(Diary)

tamakiii@hatena このページをアンテナに追加 RSSフィード

2010-08-10

MacPortsでphp5-mysqlがインストールできない問題の解決方法

| 03:24 | MacPortsでphp5-mysqlがインストールできない問題の解決方法を含むブックマーク MacPortsでphp5-mysqlがインストールできない問題の解決方法のブックマークコメント

HDDの容量がのこり僅かとなってしまっていたので,最近クリーンインストールをしました.MacPorts経由でインストールした開発環境はバックアップが取れなかったので,開発環境を構築しようとコマンドを叩いていると,PHPMySQL Extensionをインストールするphp5-mysql packageがインストールできなかったため,その解決方法を探しました.


参考:

#26000 (php5-mysql 5.3.2 doesn’t build with php5 5.3.3) – MacPorts

howto/InstallingOlderPort – MacPorts


この問題はMacPorts上のPHPのバージョンが@5.3.2から@5.3.3に上ったことで生じたようです.そのため,@5.3.2のPHPインストールすることで解決することができました.


解決方法の概略は以下の通りです.

1. 過去のリビジョンからPHP5 @5.3.2のデータをcheckoutしてきます

2. ports directoryのバックアップを取ります

3. checkoutしたデータでports directoryを上書きします

4. PHP5をインストールします

5. php5-mysqlインストールします


注意:

既にPHPやApache2をインストールしている場合は,一度uninstallした方がよいでしょう.

既にインストールされているpackageを探すには

$ port installed

特定のpackageが既にインストールされているか確認するには

$ port installed php5

uninstallを行うには,

$ sudo port uninstall php5

関連するpackageも同時にuninstallするには

$ sudo port uninstall -f php5

ついでにcleanしておくとより安全かと思われます.

$ sudo port clean php5


1. 過去のリビジョンからPHP5 @5.3.2のデータをcheckoutしてきます

直接ports directoryにインストールするのは危険なので,どこか別のところでcheckoutします.

$ cd ~/Desktop
$ mkdir ports
$ cd ports

MacPortsリポジトリhttp://svn.macports.org/repository/macports/trunk/dports,リビジョン番号は70350のようです(参考).

ですので,以下のようにしてcheckoutします.checkoutにはしばらく時間がかかります.

$ svn co -r70350  http://svn.macports.org/repository/macports/trunk/dports


2. ports directoryのバックアップを取ります

もともとあるports directoryのバックアップを取ります.ports directoryの場所は "/opt/local/var/macports/sources/rsync.macports.org/release/ports" のはずです.私はお手軽にFinderデスクトップにコピーしてしまいました.


3. checkoutしたデータでports directoryを上書きします

checkoutしたデータを,先にバックアップを取った "/opt/local/var/macports/sources/rsync.macports.org/release/ports" に移動させます.checkoutしたデータは "dports" という名前になっているので,その中身を移動させる必要があります.ここもお手軽にFinderで行いました.ファイルの数が多いので,しばらく時間がかかります.

次に,上書きしたことをMacPortsに知らせるコマンドを叩きます.

$ cd /opt/local/var/macports/sources/rsync.macports.org/release/ports
$ sudo portindex

sudoを付けないと権限が足りずに失敗します.これもしばらく時間がかかります.

これで過去のリビジョンを対象にMacPortsインストールを行ってくれるようになりました.


4. PHP5をインストールします

ここから先は一般的なインストールです.インストールしたいものが他にあれば,オプションを追加して構いません.

$ sudo port install php5 @5.3.2 +apache2

5. php5-mysqlインストールします

手順4.と同様に,オプションを追加しても構いません.

$ sudo port install php5-mysql


以上です.

では.

トラックバック - http://d.hatena.ne.jp/tamakiii/20100810/1281464669