其实最直接的yum 安装,简单了截,但有些情况,yum 用不了, 那你只能编译安装。
编译其实也挺简单,不指定路径,直接configure ,make就可以,但你要删除就麻烦,
本次安装就安装路径就稍微复杂些
需要的安装四个软件包 libmcrypt-2.5.8.tar.gz、mhash-0.9.9.9.tar.gz、mcrypt-2.6.8.tar.gz、php-7.0.5.tar.gz
一、安装mcrypt
- 安装libmcrypt
tar -zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8
./configure --prefix=/usr/local/libmcrypt-2.5.8
make && make install
ln -s /usr/local/libmcrypt-2.5.8/lib/* /usr/lib64/
#添加软连,否则安装mcrypt 找不到libmcrypt
- 安装mhash
tar -zxf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9
./configure --prefix=/usr/local/mhash-0.9.9.9
make && make install
ln -s /usr/local/mhash-0.9.9.9/lib/* /usr/lib64/
#添加软连,否则安装mcrypt 找不到mhash
- 安装mcrypt
tar -zxf mcrypt-2.6.8.tar.gz
cd mhash-0.9.9.9
./configure --prefix=/usr/local/mcrypt-2.6.8
make && make install
一、安装php-mcrypt
tar -zxf php-7.0.5.tar.gz
cd php-7.0.5/ext/mcrypt/
/usr/local/php/bin/phpize
./configure --with-mcrypt=/usr/local/mcrypt-2.6.8/
# configure 报错,找不到mcrypt.h
# 解决方法:
#用--libdir 指定mcrypt 的路径,
#
find / -type f -name "mcrypt.h"
# 找到 "mcrypt.h" 的位置,添加上
./configure --with-mcrypt=/usr/local/mcrypt-2.6.8 --libdir=/usr/local/libmcrypt-2.5.8/include
# configure 再次报错,找不到libmcrypt
# 解决方法:
#查看configure文件,发现 libmcrypt 的默认位置是/usr 、/usr/lib64/,
#那我们就在for 循环的位置,添加libmcrypt的真实位置 /usr/local/libmcrypt-2.5.8,再次configure 就能通过了。
make && make install
ll /usr/local/php/lib/php/extensions/no-debug-zts-20151012/
# 查看mcrypt.so 文件是否生成
vi /usr/local/php/lib/php.ini
#加载mcrypt.so
/usr/local/apache/bin/apachectl -k restart
# 重启apache