PHPBrewのインストール
phpのバージョンを切り替えるPHPBrewをインストールしてみた。
環境はMacOS X、HomeBrew
こちらを参考
https://github.com/phpbrew/phpbrew/blob/develop/README.ja.md
https://github.com/phpbrew/phpbrew/blob/develop/README.md
- 準備
phpのインストールが必要。Macにはphpがバンドルされているのでこれはクリア。
PHPBrewはPHPをソースからビルドするツールなのでビルドに必要なパッケージをHomeBrewでインストール
$ brew install automake autoconf curl pcre re2c mhash libtool icu4c gettext jpeg libxml2 mcrypt gmp libevent
しかし↓
$ brew link icu4c
Warningで怒られた↓
Warning: icu4c is keg-only and must be linked with --force
Note that doing so can interfere with building software.
メッセージどおり、forceオプション付きでやるとうまくいった
$ brew link icu4c --force Linking /usr/local/Cellar/icu4c/52.1... 71 symlinks created
- PHPBrewのインストール
ダウンロード
$ curl -O https://raw.github.com/c9s/phpbrew/master/phpbrew
しかし、ダウンロードうまくいかない
日本語マニュアルのやり方だとだめだったので
英語マニュアルを見るとオプション-Lを追加されていた。
$ curl -L -O https://github.com/phpbrew/phpbrew/raw/master/phpbrew % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 130 0 130 0 0 71 0 --:--:-- 0:00:01 --:--:-- 71 100 104k 100 104k 0 0 30256 0 0:00:03 0:00:03 --:--:-- 172k
できた。
chmod +x phpbrew sudo cp phpbrew /usr/bin/phpbrew
インストール終わり
- PHPBrewを使う
READMEどおりにPHPBrewコマンドを打っていく
$ phpbrew init
$ source ~/.phpbrew/bashrc
$ phpbrew lookup-prefix homebrew
既知のバージョンを一覧表示
$ phpbrew known Available stable versions: 5.5 versions: 5.5.15, 5.5.14, 5.5.13, 5.5.12, 5.5.11, 5.5.10, 5.5.9, 5.5.8 5.4 versions: 5.4.31, 5.4.30, 5.4.29, 5.4.28, 5.4.27, 5.4.26, 5.4.25, 5.4.24 5.3 versions: 5.3.28, 5.3.27, 5.3.26, 5.3.25, 5.3.24, 5.3.23, 5.3.22, 5.3.21
とりあえず最新のPHPをインストール
$ phpbrew install php-5.5.15 +default +dbs +mb +gd configure: WARNING: bison versions supported for regeneration of the Zend/PHP parsers: 2.4 2.4.1 2.4.2 2.4.3 2.5 2.5.1 2.6 2.6.1 2.6.2 2.6.3 2.6.4 2.6.5 2.7 (found: 2.3). configure: error: Cannot find libpq-fe.h. Please specify correct PostgreSQL installation path
PostgreSQLがインストールされてないので、configureではじかれた
mysqlでやってみる
$ phpbrew install php-5.5.15 +default +mysql +pdo +mb +gd
make中にわんさかWarningが出た(gccのバージョン?sudoで実行しないとだめ?)
でも、最後に「Enjoy!」が出た
To use the newly built PHP, try the line(s) below: $ phpbrew use php-5.5.15 Or you can use switch command to switch your default php version to php-5.5.15: $ phpbrew switch php-5.5.15 Enjoy!
確認してみる
$ phpbrew list Installed versions: * (system) php-5.5.15 (/Users/kubotaken/.phpbrew/php/php-5.5.15) +default+mysql+pdo+mb+gd
最新バージョンのPHPに切り替える
$ phpbrew switch 5.5.15 $ php -v PHP 5.5.15 (cli) (built: Aug 8 2014 19:49:26) Copyright (c) 1997-2014 The PHP Group Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
切り替わった!
元のバージョンのPHPに戻す
$ phpbrew off
バリアント(variants)phpのモジュールの一覧表示
$ phpbrew variants
Variants:
all, apxs2, bcmath, bz2, calendar, cgi, cli, ctype, curl, dba, debug, dom,
embed, exif, fileinfo, filter, fpm, ftp, gcov, gd, gettext, hash, iconv,
・・・
あと、phpbrewのコマンドを打つたびに
いちいち「You should not see this, please check if bashrc is sourced in your shell.」と言われるので
bashrcに以下を追加
source ~/.phpbrew/bashrc
#
PHPのバージョン切り替えが簡単にできる。
ソースからインストールするのでmakeに時間がかかる(といっても15分ぐらい)
Macでphpをインストールするのは初めてなのだけど、make中にWarningが出まくるのはいいのか?調べてはいない。
あと、apacheで動かしてない。apacheのバリアントは「+apxs2」
結論
そんなに使う機会はないかもしれない。