我试图使用以下命令在PHP 7.0.14中安装PHP软件包mbstring

yum install php70w-mbstring php70w-json php70w-gd php70w-mcrypt


我收到通知:

安装4个软件包(+2个从属软件包)

Total size: 2.0 M
Installed size: 13 M
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test


还有更多的错误冲突:


  事务检查错误:安装以下文件后出现/etc/php.ini文件
  php70w-common-7.0.14-1.w7.x86_64与软件包中的文件冲突
  php70u-common-7.0.14-1.ius.centos7.x86_64文件
  /usr/lib64/php-zts/modules/bz2.so从安装
  php70w-common-7.0.14-1.w7.x86_64与软件包中的文件冲突
  php70u-common-7.0.14-1.ius.centos7.x86_64文件
  /usr/lib64/php/modules/bz2.so从安装
  php70w-common-7.0.14-1.w7.x86_64与软件包中的文件冲突
  php70u-common-7.0.14-1.ius.centos7.x86_64文件
  /usr/lib64/php-zts/modules/calendar.so从安装
  php70w-common-7.0.14-1.w7.x86_64与软件包中的文件冲突
  php70u-common-7.0.14-1.ius.centos7.x86_64文件
  /usr/lib64/php/modules/calendar.so从安装
  php70w-common-7.0.14-1.w7.x86_64与软件包中的文件冲突
  php70u-common-7.0.14-1.ius.centos7.x86_64文件
  /usr/lib64/php-zts/modules/ctype.so从安装
  php70w-common-7.0.14-1.w7.x86_64与软件包中的文件冲突
  php70u-common-7.0.14-1.ius.centos7.x86_64文件
  /usr/lib64/php/modules/ctype.so从安装
  php70w-common-7.0.14-1.w7.x86_64与软件包中的文件冲突
  php70u-common-7.0.14-1.ius.centos7.x86_64文件
  /usr/lib64/php-zts/modules/curl.so从安装
  php70w-common-7.0.14-1.w7.x86_64与软件包中的文件冲突
  php70u-common-7.0.14-1.ius.centos7.x86_64文件
  /usr/lib64/php/modules/curl.so从安装
  php70w-common-7.0.14-1.w7.x86_64与软件包中的文件冲突
  php70u-common-7.0.14-1.ius.centos7.x86_64文件
  /usr/lib64/php-zts/modules/exif.so从安装
  php70w-common-7.0.14-1.w7.x86_64与软件包中的文件冲突
  php70u-common-7.0.14-1.ius.centos7.x86_64文件
  /usr/lib64/php/modules/exif.so从安装
  php70w-common-7.0.14-1.w7.x86_64与软件包中的文件冲突
  php70u-common-7.0.14-1.ius.centos7.x86_64文件
  /usr/lib64/php-zts/modules/fileinfo.so从安装
  php70w-common-7.0.14-1.w7.x86_64与软件包中的文件冲突
  php70u-common-7.0.14-1.ius.centos7.x86_64文件
  /usr/lib64/php/modules/fileinfo.so从安装
  php70w-common-7.0.14-1.w7.x86_64与软件包中的文件冲突
  php70u-common-7.0.14-1.ius.centos7.x86_64文件
  /usr/lib64/php-zts/modules/ftp.so从安装
  php70w-common-7.0.14-1.w7.x86_64与软件包中的文件冲突
  php70u-common-7.0.14-1.ius.centos7.x86_64文件
  /usr/lib64/php/modules/ftp.so从安装
  php70w-common-7.0.14-1.w7.x86_64与软件包中的文件冲突
  php70u-common-7.0.14-1.ius.centos7.x86_64文件
  ....
  ...
  
  错误摘要


我使用Sorry, I use CentOS Linux release 7.3.1611

如何解决此问题并安装mbstring?

我使用命令yum list php7*在PHP版本下显示所有可用的软件包:


  可用软件包名称:php70-php-mbstring Arch:
  x86_64版本:7.0.14版本:1.el7.remi大小:524
  Repo:remi-safe摘要:PHP应用程序的模块
  需要多字节字符串处理URL:
  http://www.php.net/许可证:PHP和LGPLv2以及BSD和OpenLDAP
  描述:php70-php-mbstring软件包包含一个动态共享
  将添加的对象
              :支持PHP的多字节字符串处理。


完成后:

yum install php70-php-mbstring


得到:

Installing:
 php70-php-mbstring                                                        x86_64                                                    7.0.14-1.el7.remi                                                     remi-safe                                                    524 k


重要说明:

Error: php70u-common conflicts with php-common-5.4.16-42.el7.x86_64
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

最佳答案

您正在混合使用不同名称提供PHP堆栈的各种源(存储库)。这只会引发此类问题(冲突)。


来自基本存储库(5.4)或“ remi”的php-*(单个版本覆盖基本软件包,可用5.4、5.5、5.6、7.0和7.1)
php70w- *来自Webtatic
IUS的php70u- *
来自“ remi”的php70-php-*(可以同时在/ opt中安装的多个版本)


您应该选择一个提供程序,并从中使用所有扩展。

因此,请检查安装了哪个版本,然后从同一存储库(程序包名称空间)中选择所有扩展。

对于“ remi”存储库,您可以查看Wizard说明。

关于php - 如何在PHP 7.0.14中安装mbstring?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41426450/

10-15 01:09