我在哪里可以获得PHP 7的php-mcrypt?

时间:2016-01-08 17:20:56

标签: php mcrypt centos7

我已将PHP升级到PHP 7,现在看到以下错误Use of undefined constant MCRYPT_MODE_ECB。我正在运行CentOS 7并且无法更新php-mcrypt。

我在Arch Linux上发现了它,但我对Pacman不熟悉并且无法设置它。

修改:这就是我现在所处的位置。我已经尝试删除已安装的软件包以安装所需的软件包但我没有运气。

$ sudo yum install php*
Loaded plugins: fastestmirror
Cannot open: php-7.0.2-1.mga6.src.rpm. Skipping.
Examining php70-php-mcrypt-7.0.0-1.el7.remi.x86_64.rpm: php70-php-mcrypt-7.0.0-1.el7.remi.x86_64
Marking php70-php-mcrypt-7.0.0-1.el7.remi.x86_64.rpm to be installed
Examining php70-php-mcrypt-7.0.0-2.el6.remi.x86_64.rpm: php70-php-mcrypt-7.0.0-2.el6.remi.x86_64
Marking php70-php-mcrypt-7.0.0-2.el6.remi.x86_64.rpm to be installed
Loading mirror speeds from cached hostfile
* base: mirror.cs.pitt.edu
* epel: mirror.symnds.com
* extras: ftp.linux.ncsu.edu
* remi: mirrors.mediatemple.net
* remi-php56: mirrors.mediatemple.net
* remi-safe: mirrors.mediatemple.net
* updates: mirror.atlanticmetro.net
No package php-mcrypt-7.0.2-1-x86_64.pkg.tar.xz available.
Resolving Dependencies
--> Running transaction check
---> Package php70-php-mcrypt.x86_64 0:7.0.0-1.el7.remi will be installed
--> Processing Dependency: php70-php-common(x86-64) = 7.0.0-1.el7.remi for package: php70-php-mcrypt-7.0.0-1.el7.remi.x86_64
---> Package php70-php-mcrypt.x86_64 0:7.0.0-2.el6.remi will be installed
--> Processing Dependency: php70-php-common(x86-64) = 7.0.0-2.el6.remi for package: php70-php-mcrypt-7.0.0-2.el6.remi.x86_64
--> Finished Dependency Resolution
Error: Package: php70-php-mcrypt-7.0.0-1.el7.remi.x86_64 (/php70-php-mcrypt-7.0.0-1.el7.remi.x86_64)
Requires: php70-php-common(x86-64) = 7.0.0-1.el7.remi
Installed: php70-php-common-7.0.2-1.el7.remi.x86_64 (@remi)
php70-php-common(x86-64) = 7.0.2-1.el7.remi
Available: php70-php-common-7.0.1-1.el7.remi.x86_64 (remi)
php70-php-common(x86-64) = 7.0.1-1.el7.remi
Error: Package: php70-php-mcrypt-7.0.0-2.el6.remi.x86_64 (/php70-php-mcrypt-7.0.0-2.el6.remi.x86_64)
Requires: php70-php-common(x86-64) = 7.0.0-2.el6.remi
Installed: php70-php-common-7.0.2-1.el7.remi.x86_64 (@remi)
php70-php-common(x86-64) = 7.0.2-1.el7.remi
Available: php70-php-common-7.0.1-1.el7.remi.x86_64 (remi)
php70-php-common(x86-64) = 7.0.1-1.el7.remi
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest

2 个答案:

答案 0 :(得分:9)

sudo yum install php*

这是非常错误的,有数百个php包,显然不是你想要的。

您应该使用单个PHP存储库,并且只安装所需的包(扩展/库)

对于“remi”存储库,请参阅向导:http://rpms.remirepo.net/wizard/

由于你有php70-php-common-7.0.2-1.el7.remi.x86_64,你必须使用完全相同的版本,所以php70-php-mcrypt-7.0.2-1.el7.remi。 x86_64(位于“remi-safe”存储库中)。

答案 1 :(得分:0)

我希望您已修复问题,请找到相同的扩展程序链接。

rmp -qa | grep php

php70w-国际 php70w皂

yum install php70w-mcrypt

PHP扩展程序的链接:https://webtatic.com/packages/php70/