您的位置:首页 > 运维架构 > Linux

Centos Linux安装php的mcrypt扩展

2013-04-27 14:03 501 查看
要安装Linux的mcrypt扩展,需要以下几个软件:

1. Libmcrypt-2.5.8

下载地址:http://nchc.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz

2.mhash-0.9.9.9

下载地址:http://nchc.dl.sourceforge.net/project/mhash/mhash/0.9.9.9/mhash-0.9.9.9.tar.gz

3.mcrypt-2.6.8

下载地址:http://nchc.dl.sourceforge.net/project/mcrypt/MCrypt/2.6.8/mcrypt-2.6.8.tar.gz

4.php-5.3.24 源码包

下载地址:http://cn2.php.net/distributions/php-5.3.24.tar.gz

首先安装1-3三个软件包,安装方法是:

# tar -xvf libmcrypt-X.X.X.tar
# cd libmcrypt-X.X.X
# ./configure
# make
# make install


按照这样的方法进行安装,进入php-5.3.24目录
sed -i 's|PHP_FE_END|{NULL,NULL,NULL}|' ./ext/**/*.c

sed -i 's|ZEND_MOD_END|{NULL,NULL,NULL}|' ./ext/**/*.c


其它解压 php源码,运行前如果没有安装 php-devel 的话,需要通过 yum 安装相应版本的 php-devel 就可以。

进行解压后的php源码目录,里面有 ext/mcrypt

# cd ext/mcrypt
# phpize
# aclocal
# ./configure
# make clean
# make
# make install


本人安装的是 Centos 5.4 64 ,执行以上的操作后可以在 /usr/lib64/php/modules 看到 gd.so mcrypt.so mysql.so 等。如果你在类似这样的PHP安装目录下看到了 mcrypt.so ,那么恭喜你已经安装成功。只需要在  /etc/php.ini 中加入 extension=mcrypt.so  然后 restart httpd 就可以了。

备注:

如果在安装libmcrypt等软件时提示:

checking for g++... no
checking for c++... no
checking for gpp... no
checking for aCC... no
checking for CC... no
checking for cxx... no
checking for cc++... no
checking for cl... no
checking for FCC... no
checking for KCC... no
checking for RCC... no
checking for xlC_r... no
checking for xlC... no


那么,请通过yum install gcc 安装相应开发包。

如果报:error: ‘PHP_FE_END’ undeclared here (not in a function) 类似这样的错误

可执行下面的代码来解决:

sed -i 's|PHP_FE_END|{NULL,NULL,NULL}|' ./ext/**/*.c

sed -i 's|ZEND_MOD_END|{NULL,NULL,NULL}|' ./ext/**/*.c


注意将 ./etc/***/*.c 换成 你的 php-5.3.24/ext/mcrypt/mcrypt.c 对应的目录 

如果你看到下面的提示就说明你安装成功了:

[root@a mcrypt]# make install
Installing shared extensions:     /usr/lib64/php/modules/


祝你成功!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: