PHP5.5をインストール

phpの最新版(2013年11月4日時点だと、5.5)をインストールするには4つの方法がある。今回は(a)-(c)を紹介。

 

手軽さ 信頼性 保守性 独自拡張
(a) 第三者リポジトリからyumでインストール × ×
(b) 第三者リポジトリのSRPMから独自RPMを作成 × ×
(c) 公式サイトのソースコードをビルド、インストール × ×
(d) 公式サイトのソースコードから独自RPMを作成 ×

 

(a) 第三者リポジトリからyumでインストール

PHPの公式サイトからもリンクされている第三者リポジトリremiを利用する。

remiのアップデート。

# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

remi-php55リポジトリが追加されているので、以下を実行。

# yum --enablerepo=remi-php55 install php php-fpm

 

(b) 第三者リポジトリのSRPMから独自RPMを作成

remiからSRPMをダウンロードする。SRPMの一覧はここ

$ curl -O http://rpms.famillecollet.com/SRPMS/php-5.5.5-2.remi.src.rpm

展開。

$ rpm -ivh php-5.5.5-2.remi.src.rpm

rpmbuild/SPECにspecファイルが作成されるので、これを必要に応じて編集後、RPMの作成。

$ rpmbuild -ba rpmbuild/SPECS/php55.spec

rpmbuild/RPMS配下にアーキテクチャー毎にrpmが作成されているので、インストール。

# cd rpmbuild/RPMS/x86_64/
# yum localinstall php php-fpm

インストール時に依存エラーが発生することがあるので、ここを参考に対処。

 

rpmbuildにおいてエラーがでる場合は、以下で対処。

# yum install bzip2-devel curl-devel httpd-devel sqlite-devel libedit-devel libtool-ltdl-devel systemtap-sdt-devel libc-client-devel postgresql-devel unixODBC-devel libxml2-devel net-snmp-devel libxslt-devel t1lib-devel gmp-devel gdbm-devel tokyocabinet-devel libtidy-devel aspell-devel recode-devel enchant-devel libicu-devel
# yum install --enablerepo=remi postfix gd-last-devel libicu-last-devel
# yum install --enablerepo=epel firebird-devel libmcrypt-devel freetds-devel

postfixはsmtpdaemon、gd-last-develはgd-develの代わり。

libicuのインストールで依存エラーがでる場合は以下。

# yum --nodeps -e libicu libicu-devel

 

 (c) 公式サイトのソースコードをビルド、インストール

公式サイトからソースコードをダウンロード。リダイレクトされるので-Lオプションを付ける。

$ curl -O -L http://us3.php.net/get/php-5.5.5.tar.bz2/from/jp1.php.net/mirror

ハッシュを確認してバイナリが正しいかチェック。

$ md5sum mirror

あとは、./configure, ./make, ./make install。

./configureのオプションは./configure -helpにて確認して適宜指定。

 

■参考