OSXでCakePHP3。
2017/2/11
OSX El CapitanでCakePHP3を動かすのに苦労したのでメモ。
■brew
無ければ下記からインストール。
http://brew.sh/index_ja.html
■php5.6インストール
osx標準のphp5.5ではintlビルドエラーになるのでphp5.6を入れる。
php7でもいいと思う。
brew install php56
■intlビルド(ここがハマリどころ)
CakePHPに必要なphpの国際化拡張機能intlをビルドする。
そのためにpear,icu4c,autoconfを準備する。
・pear
cd ~
curl -O http://pear.php.net/go-pear.phar #スクリプトダウンロード
php -d detect_unicode=0 go-pear.phar #インストール
export PATH=$PATH:/Users/USERNAME/pear/bin #pearにパスを通す
which pear #パスの確認
→/Users/USERNAME/pear/bin/pear #ある
・icu4c
brew install icu4c #インストール
brew link icu4c --force #これにより brew doctor で warning が出るようになるが、
#intlビルド成功するために必要。
・autoconf
brew install autoconf
・intlビルド
sudo pecl update-channels
sudo pecl install intl #途中の選択肢はそのままEnter
mdfind -name intl.so #intl.soが出来たことを確認。
・掃除
brew unlink icu4c #intlビルド終わったので戻しておく。
・php.iniにintlを設定。
mdfind -name php.ini #php.iniの場所を調べる。5.5,5.6の複数出る。
which php #php5.6の場所を参考に特定。
#エディタでphp.iniを開いて、
;extension=php_intl.dll #この行を、
extension=intl.so #こう修正。
php -m | grep intl #intl.soが組み込まれたことを確認。
→intl #ある
■CakePHP3ダウンロード
https://github.com/cakephp/cakephp/tags
バージョンを選び、Downloadsからcakephp-3-x-x.zipを選ぶ。(source codeではないほう)
■CakePHP3実行
cd cakephp-3-x-x
cd config
cp app.default.php app.php #app.phpを準備。
cd ..
bin/cake server #webサーバー実行。
http://localhost:8765
■mysql
http://qiita.com/hkusu/items/cda3e8461e7a46ecf25d
ここを参考に。
brew install mysql #インストール
mysql.server start #サーバー実行
mysql -uroot -p #コンソール実行