我已全新安装 CentOS 5.6,并使用php53-*
CentOS 存储库中的软件包安装了 PHP 5.3。具体来说,我已获得:
- php53
- php53-cli
- php53-通用
- php53-开发
- php53-mysql
- php53-pdo
- php53-xml
但是,我还需要为我的应用程序安装mcrypt
和apc
扩展。 CentOS 有一个预构建的php-mcrypt
包,但没有等效的php53-mcrypt
。 APC 的安装需要pecl
我通常会与php-pear
包一起安装的(对于 5.1),但同样似乎没有包php53-pear
。
我该如何构建这些?
编辑
看起来该php-pear
软件包可以与 配合使用php53
,所以我设法正确安装了 APC。但我仍然遇到问题,mcrypt
因为它无法通过 pecl 安装;它只是核心 PHP 构建的一部分。
答案1
您可以手动编译并安装 mcrypt 扩展。这是我在 CentOS 5.6 VPS 中所做的:
首先安装一些必需的软件包:
yum install php53-devel libmcrypt-devel gcc gcc-c++
然后从php.net下载php 5.3.6源代码并解压:
wget http://mx2.php.net/get/php-5.3.6.tar.bz2/from/us3.php.net/mirror
tar xvjf php-5.3.6.tar.bz2
(请注意,下载链接将随着每个后续 PHP 版本而改变。)
进入mcrypt扩展源代码的目录并进行编译:
cd php-5.3.6/ext/mcrypt/
phpize
aclocal
./configure
make
然后安装:
make install
创建 PHP 配置文件/etc/php.d/mcrypt.ini包含:
extension=mcrypt.so
重新启动apache:
/etc/init.d/httpd restart
创建一个带有 phpinfo 的文件来检查扩展是否已加载:
<?php
phpinfo();
?>
答案2
关于 php-pear 包:
该问题应该通过 RHEL 来解决,以便在 CentOS 中得到解决,这里是关于该问题的错误报告: PHP53 缺少 php53-pear
通过安装旧版 php-pearyum install php-pear
然后运行以下命令:
pear 升级 --force Console_Getopt 梨升级--强制梨 梨升级-全部
(这些命令似乎可以解决这个问题,它对拉布拉多特来自链接的错误报告并且它对我有用)
答案3
您还可以通过从以下位置添加 EPEL 存储库来获取 php53-mcrypt 和其他一些缺失的软件包http://fedoraproject.org/wiki/EPEL到您的系统。
答案4
从 redhad/fedora repo 安装 php53-mcrypt 版本 5,有一个 epl5 版本 :)
http://rpm.pbone.net/index.php3?stat=3&search=php53-mcrypt&srodzaj=3