2008年10月5日

mcryptをCentOS5にインストールしよう

Filed under: Linux — admin @ 6:04 PM

phpmyadminインストール後、ログイン画面で『mcrypt 拡張をロードできません』と表示される。

■対処方法

yumが使える方(yumのインストール方法

php-mcryptもインストールしたい方は以下のようにすれば依存関係を解決しつつインストールが完了する。(libmcryptが入ってない方も、yumが自動的にインストールしてくれるので心配はない)

yum install php-mcrypt

libmcryptだけインストールしたい方は以下のようにすれば良い。

yum install libmcrypt

yumが使えない方(rpmでインストールする方法)

mcryptをインストールする。さて、これにはphp-mcryptが必要になってくるわけだが、php-mcryptはlibmcryptに依存している。具体的には以下のような順序でインストールする。

  1. libmcryptをインストール
  2. php-mcryptをインストール
インストールする前にrpmの基礎知識

ファイル名が『libmcrypt-2.5.8-4.el5.centos.i386.rpm』とすると

  1. libmcryptがパッケージ名
  2. 2.5.8-4.el5がバージョン
  3. centos.i386がアーキテクチャ

特に3番目、OSとrpmパッケージのアーキテクチャが異なっているとインストールが失敗するので、コマンドライン(sshなど)でログインし、自分が使っているシステムが『x86_64』とか『i386』とか、どれに属するのか確認しておくこと!

システム情報を表示するコマンド

OSのバージョンや64bitシステム/32bitシステムを確認できる。

$uname -a

1.パッケージの準備(ダウンロード)

ダウンロードするパッケージのバージョンにはくれぐれも注意。

  1. 適切なRPMパッケージの準備。今回必要なのはphp-mcryptとlibmcrypt
  2. http://rpm.pbone.net/とかhttp://freshrpms.net/などを使って探す
  3. ダウンロードできたら、サーバーのルートディレクトリにでもアップロード
  4. 管理者権限でコマンドラインからログインし、rpmパッケージ(ファイル)をアップロードしたディレクトリに移動

2.libmcryptをインストール

libmcrypt-2.5.8-4.el5.xxxxxx.rpmについては自分が使ってるアーキテクチャに合ったパッケージをインストールすること(xxxxxx部分)。そして以下のコマンドを実行する。

rpm -ivh libmcrypt-2.5.8-4.el5.xxxxxx.rpm

3.php-mcryptをインストール

インストールするRPMパッケージのバージョンが、使っているphpのバージョンと同じになるようにすること。もちろんアーキテクチャにも注意する。

rpm -ivh php-mcrypt-xxx-xxxxxx.rpm
rpm -ivh でインストールする順番を間違えた場合
error: Failed dependencies:
libmcrypt.so.4 is needed by php-mcrypt-5.1.6-1.el5.i386

やり直してチャントlibmcryptからインストールすること!

参考:アーキテクチャの種類
i386 IA-32用バイナリRPMパッケージ
x86_64 AMD64/EMT64T用バイナリRPMパッケージ
ia64 IA-64用バイナリRPMパッケージ
Alpha ComacAlpha用バイナリパッケージ
s390 IBM S/390用バイナリRPMパッケージ
ppc32 PowerPC用バイナリRPMパッケージ
noarch アーキテクチャ非依存
src ソースRPMパッケージ

2件のコメント »

  1. Good job.

    I just install phpMyAdmin 5.2 and MySQL 5.1 on my CentOS 5.2.

    Thank you so much.

    Cindy.

    コメント by Cindy Kawata — 2009 年 3 月 2 日 @ 11:01 AM

  2. You’re very welcome!!
    It’s my pleasure.
    If you have some problems, ask me again♪

    コメント by admin — 2009 年 3 月 5 日 @ 11:58 PM

この投稿へのコメントの RSS フィード。 TrackBack URL

コメントする