MacPorts で Apache2, PHP5, MySQL5 をインストールする

MacOSX に PDO_MYSQL と GD をインストールしようとするが、次の様なエラーが出て動かなかったので MacPorts でApache2, PHP5 をインストールしてみた。

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so' - (null) in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20060613/gd.so' - (null) in Unknown on line 0

PDO_MYSQL と GD はこちらのサイトlog.metatype » OS X Leopard My Setting (PHP)を参考にインストール済で、MySQL5 もすでに MacPorts でインストールしてあった。
MacPorts での Apache2, PHP5 のインストール方法はこちらのサイトMacPortsだけでPHP5+GD2を構築(Leopard) | COLAMUNEを参考にした。

$ sudo port selfupdate
$ sudo port install apache2

port コマンドで Apache2 をインストールしようとすると、途中 apr-util のインストールの途中でエラーが出て止まってしまった。
どうやら、apr のバージョンが古いためインストール出来ないようなので apr のバージョンアップをする。古いバージョンの apr をアンインストールして新しいバージョンの apr をインストールする。その後 apr-uril のインストールを行うと正常にインストール出来た。

$ sudo port install apr
$ sudo port install apr-util

apr-util がインストール出来たので apache2 のインストールを再開する。

$ sudo port install apache2

無事 Apache2 がインストール出来たので、設定ファイルをコピーして Apache2 の起動チェックを行う。

$ sudo cp /opt/local/apache2/conf/httpd.conf.sample /opt/local/apache2/conf/httpd.conf
$ sudo /opt/local/apache2/bin/apachectl start
$ ps aux | grep apache2

続いて PHP5 のインストールを続行する。

$ sudo port install php5 +apache2 +mysql5 +sqlite +pear

インストール完了後、次のメッセージに従って設定を行う。

Warning: php5 requests to install files outside the common directory structure!
--->  Installing php5 5.2.6_1+apache2+macosx+mysql5+pear+sqlite

If this is your first install, you might want
cd /opt/local/apache2/modules
/opt/local/apache2/bin/apxs -a -e -n "php5" libphp5.so

* copy  /opt/local/etc/php.ini-dist to  /opt/local/etc/php.ini

後は各種の設定(/opt/local/apache2/conf/httpd.conf, /opt/local/etc/php.ini)を行って、Apache2 を再起動して phpinfo を確認すると PDO_MYSQL と GD がきちんとロードされていた。
phpinfo screen shot

$ sudo launchctl load -w /Library/LaunchDaemons/org.macports.apache2.plist
参考サイト

追記:Snow Leopard でもインストールした。"Snow Leopard で MacPorts から Apache2, PHP5, MySQL のインストール"

コメント

この記事へのコメントはまだありません。

Top