2012-09-07 37 views
7

tôi cố gắng để cài đặt các gói from pear.phpqatools.org/phpqatoolsgói PEAR cài đặt thất bại

Trước hết lệnh pear config-get php_dir lợi nhuận D:\Users\xampp\php\pear và tôi không có quyền để cài đặt trên ổ đĩa C.

Sau đó theo các hướng dẫn từ http://phpqatools.org/ tôi nhập:

pear config-set auto_discover 1 
pear install pear.phpqatools.org/phpqatools 

Tôi cũng đã cố gắng nhập: pear install --alldeps pear.phpqatools.org/phpqatools

Nhưng kết quả của tất cả những nỗ lực là một thất bại ...

Đây là nhật ký:

Package "pear.phpqatools.org/phpqatools" dependency "pear.phpunit.de/PHPUnit" has no releases 
Unknown remote channel: pear.pdepend.org 
Unknown remote channel: pear.phpmd.org 
Unknown remote channel: components.ez.no 
Package "pear.phpunit.de/PHPUnit_SkeletonGenerator" dependency "pear.phpunit.de/Text_Template" has 
no releases 
Package "pear.phpunit.de/phpcpd" dependency "pear.phpunit.de/File_Iterator" has no releases 
Package "pear.phpunit.de/phpcpd" dependency "pear.phpunit.de/PHP_Timer" has no releases 
Unknown remote channel: components.ez.no 
Package "pear.phpunit.de/phploc" dependency "pear.phpunit.de/File_Iterator" has no releases 
Unknown remote channel: components.ez.no 
Package "pear.phpqatools.org/PHP_CodeBrowser" dependency "pear.phpunit.de/File_Iterator" has no rel 
eases 
Failed to download pear/Text_Highlighter within preferred state "stable", latest release is version 
0.7.3, stability "beta", use "channel://pear.php.net/Text_Highlighter-0.7.3" to install 
Package "pear.phpqatools.org/PHP_CodeBrowser" dependency "pear.phpunit.de/PHPUnit" has no releases 
Package "pear.phpqatools.org/PHP_CodeBrowser" dependency "pear.php.net/PhpDocumentor" has no releas 
es 
Package "pear.php.net/PHP_CodeSniffer" dependency "pear.phpunit.de/PHP_Timer" has no releases 
Package "pear.phpunit.de/DbUnit" dependency "pear.phpunit.de/PHPUnit" has no releases 
Package "pear.phpunit.de/DbUnit" dependency "pear.symfony-project.com/YAML" has no releases 
WARNING: "pear/DB" is deprecated in favor of "pear/MDB2" 
WARNING: "pear/Auth_SASL" is deprecated in favor of "pear/Auth_SASL2" 
phpqatools/phpqatools requires package "channel://pear.pdepend.org/PHP_Depend" 
phpqatools/phpqatools requires package "channel://pear.phpmd.org/PHP_PMD" 
phpunit/PHPUnit_SkeletonGenerator requires package "channel://components.ez.no/ConsoleTools" (versi 
on >= 1.6) 
phpunit/phpcpd requires package "channel://components.ez.no/ConsoleTools" (version >= 1.6) 
phpunit/phploc requires package "channel://components.ez.no/ConsoleTools" (version >= 1.6) 
phpunit/phploc can optionally use PHP extension "bytekit" 
phpqatools/PHP_CodeBrowser can optionally use package "pear/Text_Highlighter" (version >= 0.7.1) 
downloading PHP_CodeBrowser-1.0.3.tgz ... 
Starting to download PHP_CodeBrowser-1.0.3.tgz (172,253 bytes) 
.....................................done: 172,253 bytes 
downloading PHP_CodeSniffer-1.3.6.tgz ... 
Starting to download PHP_CodeSniffer-1.3.6.tgz (352,931 bytes) 
...done: 352,931 bytes 
downloading DbUnit-1.1.2.tgz ... 
Starting to download DbUnit-1.1.2.tgz (41,895 bytes) 
...done: 41,895 bytes 
downloading Console_CommandLine-1.1.3.tgz ... 
Starting to download Console_CommandLine-1.1.3.tgz (38,507 bytes) 
...done: 38,507 bytes 
downloading Log-1.12.7.tgz ... 
Starting to download Log-1.12.7.tgz (46,898 bytes) 
...done: 46,898 bytes 
downloading DB-1.7.14.tgz ... 
Starting to download DB-1.7.14.tgz (133,103 bytes) 
...done: 133,103 bytes 
downloading MDB2-2.4.1.tgz ... 
Starting to download MDB2-2.4.1.tgz (119,790 bytes) 
...done: 119,790 bytes 
downloading Mail-1.2.0.tgz ... 
Starting to download Mail-1.2.0.tgz (23,214 bytes) 
...done: 23,214 bytes 
downloading Net_SMTP-1.6.1.tgz ... 
Starting to download Net_SMTP-1.6.1.tgz (13,164 bytes) 
...done: 13,164 bytes 
ERROR: failed to mkdir C:\php\pear\tests\PHP_CodeSniffer\CodeSniffer\Core\File 
ERROR: failed to mkdir C:\php\pear\docs\DbUnit\Samples\BankAccountDB\_files 
ERROR: failed to mkdir C:\php\pear\data\Console_CommandLine\data 
ERROR: failed to mkdir C:\php\pear\docs\Log\docs 
ERROR: failed to mkdir C:\php\pear\docs\DB\doc 
ERROR: failed to mkdir C:\php\pear\docs\MDB2\docs\examples 
ERROR: failed to mkdir C:\php\pear\tests\Mail\tests 
ERROR: failed to mkdir C:\php\pear\docs\Net_SMTP\docs 
ERROR: failed to mkdir C:\php\pear\data\PHP_CodeBrowser\templates\css 

Tôi không hiểu tại sao cài đặt cố gắng mkdir trên C:\php\pear\ và cũng cách giải quyết sự cố với kênh không xác định xóa ...

+4

Tôi giải quyết một vấn đề tương tự (nhưng không giống nhau) bằng cách xóa thủ công bộ đệm ẩn của PEAR (nằm tại: 'C: \ Người dùng \ \ AppData \ Local \ Temp \ pear'). – yannis

Trả lời

10

Cách duy nhất tôi tìm thấy để lê hoạt động khi sử dụng Xamp là xóa thư mục và cài đặt lại từ đầu. Ứng dụng khách lê (trong một thời gian dài phiên bản 1.9.2 rất bị hỏng) không hoạt động bình thường ngay cả khi ở vị trí ngoại trừ nhưng không có cách nào để sửa nó khi bạn cài đặt xamp ở một nơi khác vì đường dẫn được thiết lập theo cách cho nhiều tệp.

Làm theo hướng dẫn trên http://pear.php.net/manual/en/installation.getting.php.

Tải xuống http://pear.php.net/go-pear.phar, hãy thực hiện, chọn system cài đặt rộng và điều chỉnh tất cả các đường dẫn đến vị trí của bạn.

Một khi điều đó đang làm việc và báo cáo pear version1.9.4 sử dụng

pear config-set auto_discover 1 
pear install --force --alldeps pear.phpqatools.org/phpqatools 

để "sửa chữa" bất cứ điều gì các cài đặt cũ còn sót lại.


Chỉ cần sử dụng phiên bản lê đó cũng sẽ khắc phục tất cả sự cố về gói và kênh của bạn.

Nó nó, vì một lý do, không sử dụng

pear channel-discover $everyChannelThatDoesNotWork 
pear channel-update $thatChannel 

cho tất cả những gì được báo cáo là một vấn đề.

+0

không hoạt động nhưng loại bỏ hoàn toàn lê và cài đặt từ đầu - có. –

+0

Woah cảm ơn! Đây là cách dễ nhất để cài đặt các gói qa không bao giờ kết thúc này. Câu trả lời hay nhất. – stefgosselin

+1

Sử dụng --force luke! đã làm cho tôi. Cảm ơn! –

1

Lê không được định cấu hình đúng cách. Tôi nhớ việc cài đặt quả lê của XAMPP không hoạt động ra khỏi hộp.

Xem here để được hướng dẫn về cách đặt đúng các biến bắt buộc. Tìm những cái được đặt thành giá trị mặc định, như C:\php\<something> và thay đổi chúng thành thư mục trong cài đặt lê/php của XAMPP.

+0

'pear config-set' không thay đổi bất kỳ biến nào mà tôi thử ... –

+0

Bạn có thể cần thay đổi tệp cấu hình theo cách thủ công. Xem thêm [câu trả lời này] (http://stackoverflow.com/a/8246271/925231). Cập nhật – Ivo

5

Cố gắng sửa chữa các đường dẫn cấu hình với lệnh sau:

pear config-show 

pear config-create/C:\xampp\php\pear.ini 

pear -c c:\xampp\php\pear.ini config-set doc_dir c:\xampp\php\pear\docs 
pear -c c:\xampp\php\pear.ini config-set bin_dir c:\xampp\php 
pear -c c:\xampp\php\pear.ini config-set ext_dir c:\xampp\php\ext 
pear -c c:\xampp\php\pear.ini config-set php_dir c:\xampp\php\pear 
pear -c c:\xampp\php\pear.ini config-set cache_dir c:\xampp\php\cache 
pear -c c:\xampp\php\pear.ini config-set cfg_dir c:\xampp\php\cfg 
pear -c c:\xampp\php\pear.ini config-set data_dir c:\xampp\php\data 
pear -c c:\xampp\php\pear.ini config-set download_dir c:\xampp\php\download 
pear -c c:\xampp\php\pear.ini config-set php_bin c:\xampp\php\php.exe 
pear -c c:\xampp\php\pear.ini config-set temp_dir c:\xampp\php\tmp 
pear -c c:\xampp\php\pear.ini config-set test_dir c:\xampp\php\pear\tests 
pear -c c:\xampp\php\pear.ini config-set www_dir c:\xampp\php\pear\www 

pear -c c:\xampp\php\pear.ini config-show 

Mỗi lệnh lê nên sử dụng -c c:\xampp\php\pear.ini tham số, ví dụ:

pear -c c:\xampp\php\pear.ini config-set auto_discover 1 
pear -c c:\xampp\php\pear.ini install pear.phpqatools.org/phpqatools 
3

Không cần phải xóa bộ nhớ cache PEAR tay

pear clear-cache 

xóa bộ nhớ cache lê mà không cần phải tìm kiếm ca che bằng tay.

này đã giải quyết được câu trả lời tôi đã nhận được khi cố gắng tải về các gói từ các kênh Cấu trúc đó là

no release for package .... 

mà chỉ ra cho tôi lê mà không có phiên bản mới cho rằng gói đặc biệt đó đã được ghi nhận là trên hệ thống của tôi, mặc dù không được cài đặt thành công.

Cũng thay đổi ưa thích trạng thái từ ổn định sang devel sử dụng

pear config-set preferred_state devel 

cài đặt cho phép của tất cả các gói tôi yêu cầu, hầu hết trong số đó là một trong hai devel hoặc alpha

Hope this helps ai đó từ lãng phí gần một ngày mà điều này đã khiến tôi phải chịu đựng phần lớn lý do tại sao tôi nhận được phản hồi "Không có bản phát hành".

7

Nếu, như nó đã cho tôi, chạy tất cả các quả lê config-set lệnh vẫn gây ra lỗi này:

failed to mkdir C:\php\pear\tests\PHP_CodeSniffer\CodeSniffer\Core\File

sau đó có một giải pháp đơn giản mà đã cho tôi một thời gian để tìm ra:

Chạy thiết bị đầu cuối của bạn với tư cách là quản trị viên

Thực sự, đó là giải pháp. Sau đó, giống như những người khác nói: goto c: \ xampp \ php trong terminal của bạn và gõ lệnh sau:

pear config-set doc_dir C:\xampp\php\pear\docs 
pear config-set cfg_dir C:\xampp\php\pear\cfg 
pear config-set data_dir C:\xampp\php\pear\data 
pear config-set man_dir C:\xampp\php\local\man 
pear config-set test_dir C:\xampp\php\pear\tests 
pear config-set www_dir C:\xampp\php\pear\www 

pear install PHP_CodeSniffer 
+0

Chúc mừng, điều này đã làm việc cho tôi trong Windows với CMD. – Leo

+0

@Thế này chắc chắn là vấn đề – Kevlwig

Các vấn đề liên quan