LoginSignup
6
6

More than 5 years have passed since last update.

開発中の PHP7 を Mac でデバッグビルドする

Last updated at Posted at 2014-12-29

現在、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

正常にインストールできたようです。

6
6
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6