簡體   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