Mac OS X Yosemite環境・Homebrewでcomposerコマンドをインストールしています。
CakePHPをComposerでインストール
CakePHPをComposerでインストールできるようだったので公式ドキュメントを元にターミナルを起動して下記コマンドで インストールしました。
$ php composer.phar create-project --prefer-dist cakephp/app [app_name]
autoload.phpが読み込めないエラーが出た
インストール後アプリのURLにアクセスすると下記のようなエラーが表示されていました。
Warning: require(/myapp/vendor/autoload.php): failed to open stream: No such file or directory in /myapp/config/bootstrap.php on line 23 Fatal error: require(): Failed opening required '/myapp/vendor/autoload.php' in /myapp/config/bootstrap.php on line 23
/venerフォルダ内をみてみるとemptyとなっていました。何も無いので当然autoload.php
読み込めないですよね...
インスールに問題があったのだと思いComposerでインストールした際のログを見ていると次のような問題があったと表示されていました。
Your requirements could not be resolved to an installable set of packages. Problem 1 - cakephp/cakephp 3.2.x-dev requires ext-intl * -> the requested PHP extension intl is missing from your system.
どうやらphp.intl
というものが無いのが原因のようです。
php.intlをインストールする
Homebrewで検索します。
$ brew search intl homebrew/php/php53-intl homebrew/php/php56-intl homebrew/php/php54-intl homebrew/php/php70-intl homebrew/php/php55-intl intltool
自分の環境のバージョンにあったものをインストールします。
$ brew install php54-intl
サーバーを再起動する
php.intl
のインストールが完了したら、サーバーを再起動させるようにメッセージが出ているので、それに従ってサーバーを再起動させます。
再度CakePHPのアプリページにアクセスする
上のようなページが表示されていればOK
[参考]
- cakephp-3.0 novice, \vendor\autoload.php - Stack Overflow
- composer php - CakePHP 3.0 installation: intl extension missing from system - Stack Overflow
リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)
- 作者: Dustin Boswell,Trevor Foucher,須藤功平,角征典
- 出版社/メーカー: オライリージャパン
- 発売日: 2012/06/23
- メディア: 単行本(ソフトカバー)
- 購入: 68人 クリック: 1,802回
- この商品を含むブログ (131件) を見る