MAMP に PHP フレームワークの Symfony をインストール
流行みたいなんでやってみました。まず terminal からコマンドラインでインストール。
$ pear channel-discover pear.symfony-project.com $ pear install symfony/symfony-beta
上の行は Symfony が配布されているチャンネルの追加。下の行は Symfony のインストール(ベータ版でなければ -beta を外す)。これでインストールはされたけどこの状態で Symfony のコマンドを打ってもエラーが出る。
$ /Applications/MAMP/bin/php5/bin/symfony -v Parse error: parse error in /Applications/MAMP/bin/php5/bin/symfony
これはコマンドラインから動く PHP が元々 MacOSX が持っている PHP のバージョンで動いている為。
$ php -v PHP 4.4.4 (cli) (built: Nov 1 2006 18:10:56) Copyright (c) 1997-2006 The PHP Group Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies
えーい。これも MAMP の PHP5 とハードリンクしてしまえ。
$ sudo mv /usr/bin/php /usr/bin/php-old $ sudo ln /Applications/MAMP/bin/php5/bin/php /usr/bin/php
ついでに Symfony もハードリンク。
$ sudo ln /Applications/MAMP/bin/php5/bin/symfony /usr/bin/symfony
これにてインストールは無事終了。
$ symfony -V symfony version 1.0.0
追記。何かの拍子で symfony コマンドを打ってもずっとこんな表示。
Warning: include(##SYMFONY_DATA_DIR##/bin/symfony.php): failed to open stream: No such file or directory in /usr/bin/symfony on line 39 Warning: include(): Failed opening '##SYMFONY_DATA_DIR##/bin/symfony.php' for inclusion (include_path='.:/Applications/MAMP/bin/php5/lib/php') in /usr/bin/symfony on line 39
んー。色々と調べていたら何時の間にか自分の root に「config」フォルダが出来てその中の config.php を読み込んでだみたい。しかもこいつは間違った設定ファイルだべ。削除したらすっきり動きました。
追記…。諸々動かそうと思ったらこんな表示。
Fatal error: Cannot access protected property sfConfig::$config in /Applications/MAMP/bin/php5/lib/php/symfony/config/sfConfig.class.php on line 72
ふむ。色々と調べてみるとどうやら eAccelerator が悪さしてるみたいなんだな。おや。eAccelerator なんぞ使ってないと思ったが。スタートページから設定画面を見るとしっかり動いてる…。Zend Optimizer にしろ eAccelerator にしろ MAMP の環境設定のパネルからチェックしてもしなくても設定変わっておらん(MAMP 1.5b1)。めんどいので php.ini で eAccelerator の設定をコメントアウト。これでインストール出来ました。何だか余計な事に時間がかかってまだ何ひとつ試してないぞ。これ。