无法在 Centos 7 上安装 php-devel

无法在 Centos 7 上安装 php-devel
Error: Package: php-devel-7.4.2-1.el7.remi.x86_64 (remi-php74)
           Requires: php-cli(x86-64) = 7.4.2-1.el7.remi
           Installed: php-cli-7.4.3~RC1-1.el7.remi.x86_64 (@remi-modular-test)
               php-cli(x86-64) = 7.4.3~RC1-1.el7.remi
           Available: php-cli-5.4.16-46.el7.x86_64 (base)
               php-cli(x86-64) = 5.4.16-46.el7
           Available: php-cli-5.4.16-46.1.el7_7.x86_64 (updates)
               php-cli(x86-64) = 5.4.16-46.1.el7_7
           Available: php-cli-5.4.45-17.el7.remi.x86_64 (remi)
               php-cli(x86-64) = 5.4.45-17.el7.remi
           Available: php-cli-5.4.45-18.el7.remi.x86_64 (remi)
               php-cli(x86-64) = 5.4.45-18.el7.remi
           Available: php-cli-5.5.38-11.el7.remi.x86_64 (remi-php55)
               php-cli(x86-64) = 5.5.38-11.el7.remi
           Available: php-cli-5.5.38-12.el7.remi.x86_64 (remi-php55)
               php-cli(x86-64) = 5.5.38-12.el7.remi
           Available: php-cli-5.6.40-16.el7.remi.x86_64 (remi-php56)
               php-cli(x86-64) = 5.6.40-16.el7.remi
           Available: php-cli-5.6.40-17.el7.remi.x86_64 (remi-php56)
               php-cli(x86-64) = 5.6.40-17.el7.remi
           Available: php-cli-7.4.1-1.el7.remi.x86_64 (remi-php74)
               php-cli(x86-64) = 7.4.1-1.el7.remi
           Available: php-cli-7.4.2-1.el7.remi.x86_64 (remi-php74)
               php-cli(x86-64) = 7.4.2-1.el7.remi

我需要在 centos 机器上部署我的网站。出于某种原因,客户在这里安装了 php 7.4 版本。我已经让 php-cli 运行了,但包管理器仍然无法安装 php-devel 包。当我运行时php-cli-7.4.1-1.el7.remi.x86_64,它说包已经安装。当我尝试卸载当前安装的包时,它会询问我是否要删除所有 php 包。那么我该怎么办?

答案1

看起来你的存储库配置很乱,启用了太多存储库

  • 半模块化测试是一个测试存储库,仅供“dnf”用户使用
  • remi-php*每个都提供不同的 php 版本,你只需要保留一个

所以

yum-config-manager --disable remi-modular-test
yum-config-manager --disable remi-php55
yum-config-manager --disable remi-php56

由于您安装了 php-7.4.3RC1,因此您需要相同版本的 php-devel

我建议切换到稳定版本(目前为 7.4.2)

yum-config-manager --enable remi-php74
yum downgrade php\*
yum install php-devel

请按照正确配置巫师指示

顺便提一句,php-开发当你想构建一个 C 扩展时,最需要的是大多数扩展也已打包,您应该使用该包,而不是从源代码构建它。

相关内容