runkit with PHP5.6.x
すでにpecl.php.netではメンテされていないrunkitですが、GitHubに移行したハズが現状ではmasterブランチでさえPHP5.6.xでbuildできません。これはissueにも上がっています。
で、これに対するpullリクエストもすでに上がっているんですが、本体へのマージのところで止まってしまっているようです。。。
- Fixed compiling against PHP 5.6.0RC4 by adrianguenter · Pull Request #71 · zenovich/runkit · GitHub
- Fixed compilation with PHP 5.6 by davidsteinsland · Pull Request #73 · zenovich/runkit · GitHub
なので、PHP5.6.xでrunkitを使いたい方は、pullリクエストに上げた方のブランチをcloneして使いましょう。
なお、buildするにはgcc-4.6以降が必要なようで、CentOS6.xだと別途インストールする必要があります。今回はCentOS6.4にredhat developer toolsetをインストールしました。手順としては以下のような感じ。
$ cat /etc/issue $ CentOS release 6.4 (Final) $ Kernel \r on an \m $ $ wget http://people.centos.org/tru/devtools-1.1/devtools-1.1.repo $ sudo mv devtools-1.1.repo /etc/yum.repos.d/ $ sudo yum --enablerepo=testing-1.1-devtools-6 install -y devtoolset-1.1-gcc devtoolset-1.1-gcc-c++ $ $ git clone -b fix_php56 https://github.com/davidsteinsland/runkit.git $ cd runkit/ $ phpize $ CC=/opt/centos/devtoolset-1.1/root/usr/bin/gcc CPP=/opt/centos/devtoolset-1.1/root/usr/bin/cpp CXX=/opt/centos/devtoolset-1.1/root/usr/bin/c++ ./configure $ make $ sudo make install $ $ sudo echo 'extension=runkit.so' >> /path/to/php.ini $ $ php -v PHP 5.6.6 (cli) (built: Feb 19 2015 18:40:44) Copyright (c) 1997-2015 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2015, by Zend Technologies with Xdebug v2.2.7, Copyright (c) 2002-2015, by Derick Rethans $ $ php -m | grep runkit runkit $
これで無事PHP5.6でのテストができます:-)
追記(2015/12/03 15:30)
久しぶりにGitHubを見てみるといろいろと更新されているようで、今年の8月中旬にガツガツマージされたようです。
で、ちょっと試してみましたが、CentOS 6.4+gcc 4.4.7+PHP 5.6.16で問題なくmasterブランチをbuildできました。
$ php -v PHP 5.6.16 (cli) (built: Nov 27 2015 13:00:24) Copyright (c) 1997-2015 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies with Xdebug v2.2.7, Copyright (c) 2002-2015, by Derick Rethans $ git clone https://github.com/zenovich/runkit.git $ cd runkit/ $ phpize $ make $ sudo make install $