現在、PHP のパフォーマンスを改善するための大改修が行われており、それは PHP7 としてのリリースが進められています。
詳細は以下のページ等を参照してください。
私も新しい PHP の内部構造に興味を持ったので、まずは手元でビルドしてみることにしました。
(内部構造についての記事も正月休み中に書きたい)
ソースコードをチェックアウト
PHP7 の開発版は GitHub 上の master ブランチから取得することができます。
というわけで git で clone するのみです。
歴史あるリポジトリなのでそれなりに時間がかかります。
$ git clone git@github.com:php/php-src.git
ビルドに必要なツール・ライブラリの用意
re2c のインストール
Homebrew でインストールします。
$ brew install re2c
bison のインストール
これも Homebrew でインストールしたいところですが、PHP のビルドに必要なものより新しいもの (2014/12/29 現在では 3.0.2) が入ってしまいます。
PHP のビルドには 2.7 が必要なので、それをどうにか入れる必要があります。
以下の記事で Homebrew の Formula を用意してくださってました。
記事中の方法にちょっと手を加えて、以下のようにインストールしました。
(curl
に -L
を追加)
$ curl -L https://raw.github.com/uzulla/homebrew-versions/bison27/bison27.rb > ~/bison27.rb
$ brew install ~/bison27.rb
$ rm ~/bison27.rb
ビルド・インストール
./configure
実行時に環境変数として bison 2.7 のパスを指定します。
また、デバッグ用のビルドなので、不要な拡張は一切入れないよう --disable-all
を指定し、gdb を使うために --enable-debug
を指定しています。
--prefix
でインストール先のディレクトリを指定していますが、これは各自好きにしましょう。
$ cd php-src
$ ./buildconf
$ YACC=/usr/local/opt/bison27/bin/bison ./configure --disable-all --enable-debug --prefix=$HOME/php7
$ make
$ make install
ビルドについてはこの記事を参考にしました。
バージョンの確認
インストールが完了したらバージョンを確認してみましょう。
$ ~/php7/bin/php -v
PHP 7.0.0-dev (cli) (built: Dec 29 2014 15:24:09) (DEBUG)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v3.0.0-dev, Copyright (c) 1998-2014 Zend Technologies
正常にインストールできたようです。