在 CentosOS 7 服务器上安装带有 cassandra 扩展的 php 时我做错了什么?
对于依赖项我安装https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm和https://rpms.remirepo.net/enterprise/remi-release-7.rpm.然后我这样做:
yum install -y --enablerepo=epel,remi,remi-php70 \
php \
php-mbstring \
php-mysqlnd \
php-pecl-apcu \
php-pecl-cassandra
当命令完成时它总是给我:
Error: Package: php-pecl-cassandra-1.2.2-1.el7.remi.7.0.x86_64 (remi-php70)
Requires: libuv.so.0.10()(64bit)
如果我尝试搜索 libuv,结果如下(没有列出 0.10 版本):
yum search --enablerepo=epel,remi,remi-php70 libuv --showduplicates
Loaded plugins: fastestmirror, ovl
Determining fastest mirrors
* base: mirror.nbtelecom.com.br
* epel: mirror.globo.com
* extras: centos.xpg.com.br
* remi: remi.xpg.com.br
* remi-php70: remi.xpg.com.br
* remi-safe: remi.xpg.com.br
* updates: centosp4.centos.org
============================== N/S matched: libuv ==============================
1:libuv-devel-1.9.1-1.el7.x86_64 : Development libraries for libuv
1:libuv-1.9.1-1.el7.x86_64 : Platform layer for node.js
1:libuv-static-1.9.1-1.el7.x86_64 : Platform layer for node.js - static library
php-pecl-uv-0.1.0-1.el7.remi.7.0.x86_64 : Libuv wrapper
php-pecl-uv-0.1.1-1.el7.remi.7.0.x86_64 : Libuv wrapper
php70-php-pecl-uv-0.1.0-1.el7.remi.x86_64 : Libuv wrapper
php70-php-pecl-uv-0.1.0-1.el7.remi.x86_64 : Libuv wrapper
php70-php-pecl-uv-0.1.1-1.el7.remi.x86_64 : Libuv wrapper
php70-php-pecl-uv-0.1.1-1.el7.remi.x86_64 : Libuv wrapper
php71-php-pecl-uv-0.1.1-1.el7.remi.x86_64 : Libuv wrapper
php71-php-pecl-uv-0.1.1-1.el7.remi.x86_64 : Libuv wrapper
php71-php-pecl-uv-0.1.1-2.el7.remi.x86_64 : Libuv wrapper
php71-php-pecl-uv-0.1.1-2.el7.remi.x86_64 : Libuv wrapper
Name and summary matches only, use "search all" for everything.
答案1
您确实发现了一个问题(最好报告在github)
libuv 最近在 EPEL 中更新了(不兼容版本)。
存储库中提供的新版本 (1.2.2-4) 修复了此问题。
$ rpm -qp --requires php-pecl-cassandra-1.2.2-4.el7.remi.7.0.x86_64.rpm
libuv.so.1()(64bit)
$ rpm -qp --provides libuv-1.9.1-1.el7.x86_64.rpm
libuv.so.1()(64bit)