RHEL系でPHP5.2の最新版をパッケージからインストールしたい

RH系,CentOS系を使っていると、通常PHPは5.1系になってしまいます。symfony1.2系を使いたい場合は5.2以上が要求されるのでそのままでは使えません。

で、ソースからビルドするのもありなのですが、PHPだけパッケージ管理できないのは悲しいです。そういう場合にパッケージで管理する方法もあるのですが、これまでは

  1. Utter Ramblingsリポジトリからyumでインストール
  2. ディノオープンディレクトリのサービスを使う

の2パターンについては知っていたのですが、oracleが5.2系のrpmを提供していることを知り早速ためしたのでメモ

oracleが提供しているPHP5.2.9のRPMをCentOS5にインストールしてみる

rpmの入手は以下から
http://oss.oracle.com/projects/php/files/EL5/i386/
ちなみにEL4用もあります。これは嬉しい。

手元のCentOS5は 標準のPHPがインストール済みなのでバージョンは5.1.6

$ php -v
PHP 5.1.6 (cli) (built: Jul 16 2008 19:53:00) 
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies

以下のパッケージがyumでインストール済みなので、

 php
 php-devel
 php-cli      
 php-common   
 php-mbstring 
 php-mysql    
 php-pdo      
 php-xml      
$ sudo yum remove php*

にてざっくりとアンインストールを実行

あとは同じパッケージをダウンロードしてきてインストールしてみる。

試したいだけなので、/tmpにとってきてますが、
ちゃんとインストールしたパッケージは管理しておきましょね。

$ cd /tmp
$ wget http://oss.oracle.com/projects/php/dist/files/EL5/i386/php-5.2.9-1.el5.i386.rpm
$ wget http://oss.oracle.com/projects/php/dist/files/EL5/i386/php-cli-5.2.9-1.el5.i386.rpm
$ wget http://oss.oracle.com/projects/php/dist/files/EL5/i386/php-common-5.2.9-1.el5.i386.rpm
$ wget http://oss.oracle.com/projects/php/dist/files/EL5/i386/php-devel-5.2.9-1.el5.i386.rpm
$ wget http://oss.oracle.com/projects/php/dist/files/EL5/i386/php-mbstring-5.2.9-1.el5.i386.rpm
$ wget http://oss.oracle.com/projects/php/dist/files/EL5/i386/php-mysql-5.2.9-1.el5.i386.rpm
$ wget http://oss.oracle.com/projects/php/dist/files/EL5/i386/php-pdo-5.2.9-1.el5.i386.rpm
$ wget http://oss.oracle.com/projects/php/dist/files/EL5/i386/php-xml-5.2.9-1.el5.i386.rpm

さてインストールしようとするとエラーが発生。

$ sudo rpm -Uvh php-*
エラー: 依存性の欠如:
	autoconf213 は php-devel-5.2.9-1.el5.i386 に必要とされています

ちなみに、rpmのオプションがi(インストール)でなく、U(アップデート)なのはyum removeではphp.iniなどファイルが残されるので、
エラーになってしまうため。
もちろん、バックアップはとっておきましょね。

で、エラーの内容はautoconf213が必要といわれたので

$ sudo yum install autoconf213

しておく。

[追記]php-devは普通にPHPをインストールして使うだけでは不要なパッケージなので、必要がなければインストールしなければエラーもでません。

では、再度実行

 sudo rpm -Uvh php-*
準備中...                ########################################### [100%]
   1:php-common             ########################################### [ 13%]
   2:php-pdo                ########################################### [ 25%]
   3:php-cli                ########################################### [ 38%]
   4:php                    ########################################### [ 50%]
   5:php-devel              ########################################### [ 63%]
   6:php-mbstring           ########################################### [ 75%]
   7:php-mysql              ########################################### [ 88%]
   8:php-xml                ########################################### [100%]

あっさり終了。

バージョンを確認

$ php -v
PHP 5.2.9 (cli) (built: Mar 17 2009 12:04:37) 
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies

oracleが提供していることもあり、
Utter Ramblingsリポジトリはどうだろなーって方にはぴったりですね。