RHEL(CentOS)がパッケージのバージョンを選定するにあたたって、実際にどういうことをしているのかはわからないのですが、ベースになるFedoraで、そのとき枯れそうになってるバージョンなんですかねぇ。
基本的にある程度、枯れたリリース時のバージョンを維持します。
しかし、RHEL 5系のOSでもPHP 5.2系の最新+PostgreSQL 8.3系なんていう選択もあると思います。
php-pgsqlやphp-pdo-pgsqlを使うときにlibpg.so.4を必須にするパッケージとlibpg.so.5を必須にするものがあるようです。
コンパイル時に決まるのかなぁ?あんまり深く考えないことにします。
PHP Warning: PHP Startup: Unable to load dynamic library
'/usr/local/zend/lib/php_extensions/pdo_pgsql.so' -
libpq.so.5: cannot open shared object file:
No such file or directory in Unknown on line 0
こんな感じのエラーに悩まされているなら、ここを見て正解です。
CentOS 5.3でもpostgresql-libsは、PostgreSQL 8.1系なので、libpg.so.4が含まれています。
libpg.so.5をインストールするには、PostgreSQL公式サイトのRHEL 5用、またはCentOS 5用のPostgreSQLの8.2、8.3、8.4リポジトリを追加して、そこからpostgresql-libsパッケージをインストールすればよいわけです。
リポジトリの追加方法は
「PostgreSQL(PGDG)をCentOS(RHEL)のyumリポジトリに追加する」を参照してください。
# yum update postgresql-libs
これだけで、libpg.so.5 問題は解決です。
コメント
Pingback
[...] http://wdsdx.com/centos_php_pgsql を読むとどうやら postgreSQL8.1系の postgresql-libs に含まれるらしい。 [...]