スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

mac El capitan でcomposer でcakephp3を入れる

mac El capitan でcomposer でcakephp3を入れるのに時間かかったのでメモ。
php composer.phar installで
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.

Problem 1
- Installation request for cakephp/cakephp 3.0.12 -> satisfiable by cakephp/cakephp[3.0.12].
- cakephp/cakephp 3.0.12 requires ext-intl * -> the requested PHP extension intl is missing from your system.
Problem 2
- cakephp/cakephp 3.0.12 requires ext-intl * -> the requested PHP extension intl is missing from your system.
- cakephp/debug_kit 3.1.10 requires cakephp/cakephp 3.0.* -> satisfiable by cakephp/cakephp[3.0.12].
- Installation request for cakephp/debug_kit 3.1.10 -> satisfiable by cakephp/debug_kit[3.1.10].
で、うまく入らなかった。

手順としては
1. pear & pecl を使えるようにする
2. pecl で sudo pecl install intl
でオッケーなんだけど、sudo pecl install intl でこけまくった。

やったことと、表示されたエラーのメモと対処法
1.
sudo find / -name *intl.so
でintl.soがあるか確認。
※ macだと
/usr/local/php5-5.6.9-20150515-130841/lib/php/extensions/no-debug-non-zts-20131226/intl.so
にあったけど、これをphp.iniで指定してもダメだった。

2. sudo pecl install intlしたら
ERROR: unable to unpack /private/tmp/pear/download/intl-3.0.0.tgz
のエラー。
わからんけど、intl-3.0.0.tgzを削除して再度実行すれば出なくなった。

3. Xcode のコマンドラインツールをインストール
xcode-select --install
でインストール

4. php.ini にパス追加
include_path = ".:/usr/lib/php/pear"
extension_dir = "/usr/lib/php/extensions/no-debug-non-zts-20100525"


5. pear と pecl のアップデート
sudo pear channel-update pear.php.net
sudo pecl channel-update pecl.php.net
sudo pear upgrade-all


6.
configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers.
の対処
wget http://jaist.dl.sourceforge.net/project/re2c/re2c/0.13.7.5/re2c-0.13.7.5.tar.gz
tar zxvf
cd re2c-0.13.7.5
./configure
make
sudo make install


7. ICU のインストール
configure: error: Unable to detect ICU prefix or no failed. Please verify ICU install prefix and make sure icu-config works.
ERROR: `/private/tmp/pear/temp/intl/configure --with-icu-dir=DEFAULT' failed
のエラーが出ていたのでインストール
curl -O http://download.icu-project.org/files/icu4c/52.1/icu4c-52_1-src.tgz
tar -zxvf icu4c-52_1-src.tgz
cd icu/source
./runConfigureICU MacOSX
make
sudo make install
ダウンロードする場所はその時の最新がよいかも。
http://site.icu-project.org/download

8. Autoconf のインストール
curl -O http://ftp.gnu.org/gnu/autoconf/autoconf-latest.tar.gz
tar -zxvf autoconf-latest.tar.gz
cd autoconf-2.69
./configure
make
sudo make install


9. ここまできてようやく
sudo pecl install intl

長かった・・・

10. sudo apachectl restart 最後にこれしてOK。

11.
php composer.phar install
PHP Warning:  PHP Startup: intl: Unable to initialize module
が出てたけど、これはphp.iniに書いたintl.soへのパスが違うため。


参考サイト
Installing the PHP intl extension on OS X Mavericks
PHP Warning: PHP Startup: ????????: Unable to initialize module
CONFIGURE: ERROR: UNABLE TO DETECT ICU PREFIX OR NO FAILED. PLEASE VERIFY ICU INSTALL PREFIX AND MAKE SURE ICU-CONFIG WORKS.
CentOSにPHPをソースからインストール
【Composer】MAMP環境にComposerでCakePHP3をインストールする
スポンサーサイト

トラックバック

コメント

コメントを残す

Secret


プロフィール

U2K

Author:U2K
いろいろプログラムに関しての覚え書きをちょくちょくと書いていきます。

オススメ










オススメ

忍者AdMax

u2k on Twitter

最近の記事


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。