CentOS 5 に pcre をインストールしようと yum コマンドを実行した際に、Transaction Check Error というものが発生してしまいました。これは 64bit OS に 32bit 用のパッケージと 64bit 用のパッケージの両方がインストールされていたことが原因でした。
rpm -q で、パッケージがインストールされているかどうかを確認すると、
$ rpm -q pcre
pcre-6.6-2.el5_1.7
pcre-6.6-2.el5_1.7
となり、同じパッケージが二つインストールされていました。
まず、arch コマンドで、CPU のアーキテクチャが 32 bit なのか 64bit なのか確認します。
$ arch
x86_64
結果は i386 か x86_64 の場合がほとんどだと思います。
…本当かな…。自信ない…。
前者は 32bit、後者は 64bit です。
次に、重複しているパッケージ (ここでは pcre) で、不要なアーキテクチャのものを削除します。
アーキテクチャを指定するには、[パッケージ名].[アーキテクチャ名] と表記します。
yum remove pcre.i386
これで正常に yum で操作ができるはずです。
参考:
CentOS 5 アップデートでエラー – samba で行こう!
CentOS 5.4 x64になぜi386のパッケージが入っているのか。 – にわかSEの独り言
システムのアーキテクチャを表示 (archコマンド) – Linux コマンドリファレンス