2014-05-20 9 views
15

在一個PECL包安裝,我得到了錯誤,梨 - 成功了,但它不是一個有效的包

Download of "pecl/pecl_http" succeeded, but it is not a valid package archive 
Error: cannot download "pecl/pecl_http" 

這個錯誤就要對所有的包。所以我嘗試了這裏給出的解決方案, http://cweiske.de/tagebuch/pear-php-5.5.htm。但它不起作用。而我對此沒有任何其他線索。如果有人解釋究竟是什麼問題,這將非常有幫助。請幫忙。

回答

23

此錯誤通常影響從Ubuntu 12.04 LTS升級到Ubuntu 14.04 LTS的系統。

有一個解決方法爲php5-5.5.9作爲註釋kolAflashLaunchpad

解決方法包含一個小錯字(tar而不是tgz),所以我提供了一個有效的解決方案:

# First run pear to download the packages. It will probably put the packages into 
# /build/buildd/php5-5.5.9+dfsg/pear-build-download/ 
# but it can't install them. 
$ pear upgrade 

# Un-Gzip the downloaded packages. 
$ gunzip /build/buildd/php5-5.5.9+dfsg/pear-build-download/*.tgz 

# Now pear should be able to work with the pure tar-files. 
$ pear upgrade /build/buildd/php5-5.5.9+dfsg/pear-build-download/*.tar 

對於這種解決方法的所有信用顯然去kolAflash

+0

和kolAflash是英雄!TYVM。 –

+0

這個解決方案也適用於php5的mailparse-2.1.6。 – briankip

0

看起來像這是一個錯誤,並與一些特定版本的軟件相關聯。快速谷歌搜索發現了一個鏈接到像2011年這樣的問題的cPanel論壇,並且相當新鮮https://bugs.php.net/bug.php?id=67075。考慮改變從32位系統的PHP版本/切換(例如,它是可重現的與32位全新的Ubuntu 14.04和64位版本不可重現相同)。

+0

感謝您的回答。但是我們有一些爲32位體系結構編寫的項目:( – Stranger

+0

然後你必須降級到以前的Ubuntu版本 - 或者等到bug修復之後才能解決。 當然,有一個選項可以爲它做出貢獻,但我認爲這不是一個選項 –

15

似乎梨不能從tgz檔案安裝。 當您使用-Z,--nocompress選項下載時,您必須明確請求解壓縮的文件。

所以,儘量sudo pear install -Z

9

對於這一點,最好的解決辦法是升級PEAR的檔案包,PEAR安裝使用,之後,你將不再需要安裝新時明確要求未壓縮的文件,或升級現有的軟件包。

$ sudo pear upgrade -Z Archive_Tar 

你不應該有任何其他的包裝做到這一點,只要你的Archive_Tar做第一。

發生此問題是因爲Ubuntu將pack/unpack格式字符串稍微更改爲與Perl行爲對齊,這會打破向後兼容性。 PEAR在Archive_Tar的後續版本中解決了這個問題(Ubuntu不斷在每個後續版本的PHP中進行這些更改...)。因此,pear安裝程序需要比1.3.11更高版本的Archive_Tar - 詳細信息在https://bugs.launchpad.net/ubuntu/+source/php5/+bug/1434099

在每次'軟件升級'影響Ubuntu所提供的PHP之後,您需要執行此操作,因爲升級會回滾您本地安裝的Archive_Tar版本。它還回滾Console_Getopt,XML_Util和PEAR包。

+0

不幸的是,現在這個錯誤提示了這個stackoverflow問題,因爲Archive_Tar被壓縮使用較新的版本格式 – oskarpearson

+0

準確地說,它不能自行升級,什麼是POS。 – user27636

2

我有這個問題,最終得到的Archive_Tar通過

gunzip *.tgz tar -xvf Archive_Tar-1.4.2.tar mv package.xml Archive_Tar-1.4.2 cd Archive_Tar-1.4.2 pear upgrade package.xml

的工作之後,梨升級爲我工作進行更新。我以前有Archive_Tar-1.3.10並升級到1.4.2

相關問題