Ошибка запуска cpan в первый раз

Мне интересно, может ли кто-нибудь помочь мне. Я установил CPAN.pm через командную строку, а затем попытался установить модуль через CPAN. Но я столкнулся с ошибкой:

Can't call method "http" on unblessed reference at /usr/lib/perl5/5.10.0/CPAN/FirstTime.pm line 1866.

Ответ 1

Во-первых, я удивлен тем, что CPAN еще не установлен, поскольку он был частью стандартного дистрибутива Perl, так как Perl 5.004 был выпущен пятнадцать лет назад.

Во-вторых, я удивлен, что вы все еще используете Fedora 11. Эта версия не поддерживается с июня 2010 года.

В-третьих, я удивлен, что вы хотите использовать CPAN.pm как CPANPLUS и cpanminus являются гораздо лучшими интерфейсами для CPAN.

Но учитывая все эти сюрпризы, если вы хотите использовать CPAN в своей системе, лучший подход, вероятно, заключается в том, чтобы использовать тот проект, который был разработан для вас проектом Fedora.

$ sudo yum install perl-CPAN

В Fedora будет доступно несколько модулей CPAN, готовых к сборке. Вы можете увидеть их всех, используя:

$ yum list available perl-\*

Вы найдете еще более доступным для последних версий Fedora.

Вы можете почти наверняка получить CPANPLUS, установив perl-CPANPLUS. Я сомневаюсь, доступен ли cpanminus для такой старой версии Fedora.

Ответ 2

У меня была такая же проблема при установке Perlbrew.

После некоторой отладки я узнал, что эта ошибка возникает, потому что логика CPAN не может найти кандидата в зеркало. Конечно, это можно было бы улучшить в CPAN:: Mirrors или CPAN:: FirstTime, просто проверив результаты, возвращаемые связанными функциями.

Так как они не проверяются (и, следовательно, предполагается, что всегда возвращает некоторое значение), я получил эту бессмысленную ошибку. Но я должен сказать, что я не проверял дальше, чтобы понять, почему никакая ценность не возвращается в конце концов.

Вы можете безопасно избежать этой ошибки, просто выбрав Нет как ответ для автоматической настройки. Конечно, вам нужно будет ответить за каждую из конфигурационных директив.

Я получил это при установке perl 5.16.3 через perlbrew.

Ответ 3

Эта ошибка может быть решена путем ввода полей имени пользователя и пароля в прокси-сервере, который использует cpan. 1] Сначала установите cpan на

sudo yum install perl-CPAN

2] Затем выполните следующую команду

cpan

Он запрашивает основы установки, затем выбирает опцию "НЕТ" для автоматического выбора, затем продолжайте нажимать, пока вас не попросят "Автоматически подключиться к Интернету", нажмите "Нет".

3] Затем вам будет предложено, чтобы данные о зеркале продолжали выбирать из списка, который он предоставил.

4] Затем установите поля имени пользователя и пароля прокси

5] Затем установка будет завершена, и она перенесет вас в приглашение cpan > , как показано ниже

cpan>

6] В командной строке введите

install Bundle::LWP

Ответ 4

У меня была такая же ошибка, и у меня не было прав root. Проблема заключалась в том, что были установлены две версии cpan:

  • /USR/бен/CPAN
  • /USR/локальные/бен/CPAN

Когда я указал первое, все начало работать.