2013-11-24 3 views
2

У меня есть тролль, устанавливающий phpDocumentor через PEAR на машине CentOS, и я даже не знаю, связано ли это с грушей или php.Установка phpDocumentor через PEAR, «команда не найдена»

Вот команды, которые я выполнил и их вывод:

# pear -v install phpdoc/phpDocumentor 
## http://pastebin.com/2ijRG9KW 

# /usr/local/bin/phpdoc 
-bash: /usr/local/bin/phpdoc: No such file or directory 

# tree -a -h /usr/local/lib/php/phpDocumentor/ 
## http://pastebin.com/NjynYKPL 

Я включил команду дерева, потому что я что-то думать не в порядке там ...

На первый взгляд, это проблема PEAR или phpDocumentor?

Редактировать

Пробовал

# whereis phpdoc 
phpdoc: /usr/local/bin/phpdoc 

Но

# cd /usr/local/bin 
# ls -l | grep -i phpdoc 
lrwxrwxrwx. 1 root root  48 Nov 23 21:46 phpdoc ->   /usr/local/lib/php/phpDocumentor2/bin/phpdoc.php 
-rwxr-xr-x. 1 root root  1039 Nov 24 21:31 .tmpphpdoc* 

Угадайте, что ...

-bash: cd: /usr/local/lib/php/phpDocumentor2: No such file or directory 

Но есть PhpDocumentor папка (вместо phpDocumentor2), чье дерево я s доступно на этом pastebin

+0

ошибка говорит, что нет phpdoc в каталоге/usr/local/bin /. Вам нужно будет узнать, где это (возможно, где-то в/usr/local/lib/php/phpDocumentor /). Попробуйте, какой phpdoc и/или где phpdoc –

+0

Единственное, что у меня есть, это недействительная ссылка: \ (см. Править) –

ответ

0

В той же папке, где я исполнил грушу установки я нашел error_log файл:

[23-Nov-2013 22:27:54 UTC] PHP Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 8192 bytes) in /usr/local/lib/php/PEAR/Installer.php on line 580

Попался.

2

Вы можете использовать pear config-show, чтобы узнать, какой каталог он использует в качестве своего bin_dir, где программа PEAR ставит свои «двоичные файлы». Я думал, что основные дистрибутивы Linux предварительно сконфигурировали их настройки PEAR, чтобы использовать /usr/bin в качестве правильного местоположения, поэтому вы можете попробовать /usr/bin/phpdoc. Предоставлено, /usr/bin почти всегда находится в вашем PATH по умолчанию, так что обычно нужно просто пробовать phpdoc.

Ошибка памяти из установки PEAR означает, что сам установщик PEAR разбился при попытке установить phpDocumentor. Вам нужно будет отредактировать файл php.ini, чтобы увеличить значение параметра memory_limit. Похоже, что сейчас это дефолт крошечного 8 МБ. Я бы предложил не менее 256 МБ, если это не маленький/старый компьютер. Затем попробуйте переустановить (pear install --force phpdoc/phpdocumentor). Я ожидаю, что --force будет необходим, так как PEAR может подумать, что он уже успешно его установил. Если install дает проблемы, тогда вместо этого попробуйте update --force.

+0

Я выяснил, что на самом деле в bin_dir есть двоичный файл phpdoc, но это недопустимая ссылка (см. вопрос) ... –

+1

Правильно, но так как установка потерпела крах в случайной точке из-за ограничения памяти, не известно, сколько разных способов можно было бы покрутить :-) Увеличьте memory_limit или даже отключите его, установив его на -1, а затем запустите мои команды --force. Это должно привести к успешной установке. – ashnazg

3

я столкнулся с таким же вопросом и нашел там не было phpdoc звена в моей папке /usr/local/bin

Чтобы устранить эту проблему, я использовал pear config-show, чтобы позволить мне посмотреть, где каталог PEAR бен, а затем создал символическую ссылку, файл phpdoc в этом месте.

каталога

Моего PEAR Bin установлен на: /usr/local/Cellar/php55/5.5.8/bin/

Моего Локального каталог Bin установлен на: /usr/local/bin

Чтобы создать ссылку:

ln -s /usr/local/Cellar/php55/5.5.8/bin/phpdoc /usr/local/bin/phpdoc

Смежные вопросы