phpenvに頼らずにphp-build単体でがんばる場合に。
必要なライブラリー関連はhomebrewで入れる。
xcode-select --install
libz
が足りないとか言われるのはこれが原因brew install autoconf automake bison re2c libjpeg libpng libmcrypt libxml2 igbinary imagemagick
brew link --force bison libxml2
--HEAD
つけないと新しいバージョンが入らないgit clone git://github.com/php-build/php-build.git
./install.sh
を実行
/usr/local
にcloneしたphp-buildの中身をコピーしてくれるvim /usr/local/share/php-build/default_configure_options
--with-pdo-pgsql
vim /usr/local/share/php-build/extension/definition
"redis","http://pecl.php.net/get/redis-$version.tgz","https://github.com/phpredis/phpredis.git",,,"extension",
"apcu_bc","http://pecl.php.net/get/apcu_bc-$version.tgz","https://github.com/krakjoe/apcu-bc.git",,,"extension",
mkdir -p ~/.php/versions
php-build --definitions
で導入可能なパッケージ確認PHP_BUILD_INSTALL_EXTENSION="apcu=@ redis=@ memcached=@ imagick=@" PHP_BUILD_EXTRA_MAKE_ARGUMENTS=-j2 php-build -i development {,~/.php/versions/}7.2.6
PHP_BUILD_INSTALL_EXTENSION="apcu=@ redis=@ memcached=@ imagick=@" PHP_BUILD_EXTRA_MAKE_ARGUMENTS=-j2 php-build -i development {,~/.php/versions/}7.0.17
PHP_BUILD_INSTALL_EXTENSION="redis=@ memcached=2.2.0 imagick=@" PHP_BUILD_EXTRA_MAKE_ARGUMENTS=-j2 php-build -i development {,~/.php/versions/}5.6.30
PHP_BUILD_KEEP_OBJECT_FILES=on
を付けるとmake clean
しなくなるapcu_bc.so
が見つからないエラーになるが、apc.so
という名前でインストールされているのでapcu_bc.ini
に書かれているパスを書き換えればOKln -nfs ~/.php/versions/7.0.17 ~/.php/php70
とかすると便利PATH_add $HOME/.php/php70/bin
とかしてバージョン固定<?php phpinfo();
を書いたファイル用意して~/.php/php70/bin/php -S localhost:8070
とかするとphpinfoが簡単に見られる