繁体   English   中英

无法在 centos 上安装 php-devel

[英]can't install php-devel on centos

我需要安装 php-devel 的帮助(我需要它,因为它有 phpize,这是安装 eAccelerator 所必需的)。 但是当我尝试使用yum install php-devel时,出现以下错误:

# yum install php-devel
Loaded plugins: fastestmirror, priorities
Loading mirror speeds from cached hostfile
 * base: centos.itt-consulting.com
 * epel: mirror.yandex.ru
 * extras: centos.itt-consulting.com
 * passenger: mirror.hmdc.harvard.edu
 * updates: centos.itt-consulting.com
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php-devel.x86_64 0:5.3.3-14.el6_3 will be installed
--> Processing Dependency: php = 5.3.3-14.el6_3 for package: php-devel-5.3.3-14.el6_3.x86_64
--> Finished Dependency Resolution
Error: Package: php-devel-5.3.3-14.el6_3.x86_64 (updates)
           Requires: php = 5.3.3-14.el6_3
           Installed: php-5.4.6-1.el6.remi.x86_64 (@remi-test)
               php = 5.4.6-1.el6.remi
           Available: php-5.3.3-3.el6_2.8.x86_64 (base)
               php = 5.3.3-3.el6_2.8
           Available: php-5.3.3-14.el6_3.x86_64 (updates)
               php = 5.3.3-14.el6_3
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest

我不知道如何处理这些错误。 我安装了 php 5.3.3(phpinfo() 说的),所以不明白为什么在这个列表中我可以看到Installed: php-5.4...

您需要运行yum --enablerepo=remi,remi-php54 install php-devel而不是运行yum install php-devel yum --enablerepo=remi,remi-php54 install php-devel

简而言之,只需从 remi repo 中指定您想要的 php-devel 版本。 在您的情况下,您从 remi 安装了 php54,因此您需要添加 "remi-php54" 。 这样就可以在没有停机的情况下成功安装 php-devel。

我所做的是:

yum search php53

它显示了要安装的 php-devel 文件。 一旦我进行了搜索并找到了正确的开发包,我只需在 yum install 后复制并粘贴整个名称。 我执行了

yum install php53-devel.x86_64

为拿到它,为实现它

如果你有 php 5.5.x, centos 6.5 64 试试这个

yum install php55w-devel

你还需要 gcc

yum install gcc.x86_64

php是从 Remi 的存储库安装的。 您需要降级到股票php ,或者从同一个地方获取php-devel

考虑到我从不同的 repo 安装了不同的东西,唯一的方法是删除从 Remi 的 repo 安装的所有包并使用 yum 安装标准包。

1) 列出从某个奇怪的 repo(在我的例子中为 @remi)安装的所有软件包,例如yum list installed | grep remi yum list installed | grep remi

2) 使用yum remove <package_name>从系统中完全删除所有软件包

注意:httpd 重新启动后 - 所有站点都会死!

3)快速安装所有你需要的东西,例如yum install php-mysql php-gd php-imap php-ldap php-mbstring php-odbc php-pear php-xml php-xmlrpc等。

4)重启httpd并启动mysql服务器。

5) 您的网站再次活跃起来。

我做这一切的唯一原因是因为我想为 php 安装 eAccelerator 以加快它的速度(并且由于 remi 的 repo 包而无法安装),我很高兴我做到了! 所有脚本的运行速度都快了 2-10 倍(我什至无法想象我的网站的响应速度如此之快)。

sudo yum --enablerepo=remi install php-devel

关于最初的问题(安装 eAccelerator)。

这个项目已经死了,从来没有使用过 PHP >= 5.4。

所以如果你需要一个操作码缓存,请选择一个维护好的。 我会推荐“opcache”,由 PHP 项目维护的官方缓存,从 5.5 开始包含在 php-src 中,并且在 5.4 的 pecl 中可用。

如果您使用“remi”存储库,在尝试构建扩展之前,首先检查它是否在存储库中可用,因为大多数 PECL 扩展都可作为 RPM 使用,请参阅http://blog.remirepo.net/pages/ PECL-扩展-RPM-状态

yum --enablerepo=remi,remi-php55 install php55-devel 

为我工作

对于 PHP 7.2 和类似版本,以下对我有用(注意remi-php72

sudo yum --enablerepo=remi,remi-php72 install php-devel  

如果这是关于为 centos 安装 xdebug 要求,那么:

sudo yum --enablerepo=remi,remi-php72 install php-devel autoconf automake

只需输入:

sudo nano /etc/yum.conf 然后删除 php*

然后输入:

yum install --enablerepo remi php-pear php-devel

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM