環境
- CentOS 6.6
- rbenv 導入済み
- git 導入済み
準備
- プロキシの指定方法
- RPMforge 導入
phpenvのインストール
cd /usr/local/src
curl https://raw.github.com/CHH/phpenv/master/bin/phpenv-install.sh | bash
vi ~/.bash_profile
~/.bash_profile
PATH=$HOME/.rbenv/bin:$PATH
PATH=$HOME/.phpenv/bin:$PATH
PATH=$PATH:$HOME/bin
eval "$(rbenv init -)"
eval "$(phpenv init -)"
source ~/.bash_profile
php-buildの導入
git clone https://github.com/CHH/php-build.git ~/.phpenv/plugins/php-build
php-buildの更新
cd ~/.phpenv/plugins/php-build
git reset --hard && git pull
バージョンを指定したPHPのインストール
今回はPHP5.5.22をインストールする(2015/3/26 PHP5.5系最新)
インストール可能なPHPのバージョンを調べる
phpenv install
依存関係にあるパッケージを導入する
yum --enablerepo=rpmforge install re2c libmcrypt-devel
yum install bison libxml2-devel libcurl-devel libjpeg-devel libpng-devel readline-devel libtidy-devel libxslt-devel
ビルド時のオプションを変更する
PHPをビルドする時のオプションは~/.phpenv/plugins/php-build/share/php-build/default_configure_options
に記述されている。これは全体のオプションでどのバージョンにも適用される。
設定可能なオプションはPHP: 中心となる configure オプションのリストを参考
カレントディレクトリのphp.iniを読み込むようにする
vi ~/.phpenv/plugins/php-build/share/php-build/definitions/5.5.22
5.5.22
configure_option "--with-config-file-scan-dir=.;/root/.phpenv/versions/5.5.22/etc/conf.d"
httpd用のモジュールを作成する
デフォルトではhttpd用のモジュールであるlibphp5.so
が作成されないので、バージョンを指定してオプションを変更する
vi ~/.phpenv/plugins/php-build/share/php-build/definitions/5.5.22
以下の行を先頭に追加する
5.5.22
configure_option "--with-apxs2=/usr/bin/apxs"
intl拡張モジュールを有効にする
vi ~/.phpenv/plugins/php-build/share/php-build/definitions/5.5.22
5.5.22
configure_option "--enable-intl"
インストール
phpenv install 5.5.22
PHPのバージョンを切り替える
phpenv global 5.5.22
phpenv rehash