Как исправить ошибку модуля Perl CPAN: требуется версия 0.82, это только версия 0.78? - PullRequest
1 голос
/ 20 мая 2011

Независимо от того, использую ли я CPAN или устанавливаю вручную, каждый раз, когда я пытаюсь запустить «perl Makefile.PL» для создания make-файла для модуля Perl, я получаю следующую ошибку:

ОШИБКА из оценки Makefile.PL: Не удается найти метод объекта "new" через пакет "CPAN :: Meta" в строке /usr/lib/perl5/5.8.8/ExtUtils/MM_Any.pm 1199

Установлен модуль CPAN :: Meta, поэтому я полностью озадачен этим.

При запуске: perl -MCPAN::Meta -e1 возвращает мне ошибку:

требуется версия 0.82 - это всего лишь версия 0.78 в /usr/lib/perl5/5.8.8/CPAN/Meta/Converter.pm строка 12.

Ответы [ 4 ]

1 голос
/ 23 мая 2011

Кажется, что при установке ExtUtils :: MakeMaker файл version.pm (который входит в состав EU :: MM) не был обновлен. Вам нужно обновить его вручную. Для этого требуется root, если вы не используете local :: lib.

0 голосов
/ 04 мая 2015

Если у вас есть ошибка (согласно комментарию о perl -MCPAN::Meta -e1):

требуется версия 0,82 - это только версия 0,78

, затем попробуйте обновить его:

cpan CPAN::Meta

Если у вас нет доступа к глобальной установке пакетов perl, запустите cpan и выполните:

cpan> look CPAN::Meta

, который откроет подоболочку в каталоге дистрибутива, так что вы можете загрузить CPAN tar.gz вручную и извлечь его там.

Источник: Проблемы с установкой Inline :: Python

0 голосов
/ 30 июля 2011

У меня была такая же проблема, вот решение с описанием:

Я делал " cpan Bundle :: CPAN ", который не удался.Когда я перезапустил, я обнаружил, что cpan теперь не работает, и я не смог установить какие-либо модули.Что еще хуже, « perl Makefile.PL » также умирает с той же ошибкой:

Не удается найти метод объекта «новый» через пакет «CPAN :: Meta» в/usr/lib/perl5/5.8.8/ExtUtils/MM_Any.pm line XXXX

При непосредственном тестировании модуля CPAN :: Meta я обнаружил, что версия Parse :: CPAN :: Meta была слишкомстарый: perl -MCPAN :: Meta Parse :: CPAN :: Мета-версия 1.44 требуется - это только версия 1.40 в /usr/lib/perl5/5.8.8/CPAN/Meta/Converter.pm строка 13.

Чтобы иметь возможность обновить Parse :: CPAN :: Meta, мне сначала пришлось отключить использование CPAN :: Meta в MakeMaker.Я отредактировал файл: / USR / Lib / perl5 / 5.8.8 / ExtUtils / MM_Any.pm И добавил « return 0; » после « sub _has_cpan_meta {», чтобы сделать: sub _has_cpan_meta {return 0;

Затем я смог установить Parse :: CPAN :: Meta как обычно с помощью « cpan Parse :: CPAN :: Meta ».После этого я подтвердил, что CPAN :: Meta работает " perl -MCPAN :: Meta " и удалил " return 0 ", который я добавил в / usr / lib /perl5 / 5.8.8 / ExtUtils / MM_Any.pm .

Привет, все снова работает:)

Надеюсь, это поможет любому, кто найдет эту тему.

0 голосов
/ 20 мая 2011

Попробуйте найти местоположение CPAN :: Meta и удалите его или создайте резервную копию, а затем попробуйте установить его снова.

...