(Perl) Невозможно выполнить `инициализацию' в Term::ReadLine::Gnu в Mac OSX 10.6

Я недавно установил MacPorts и думаю, что это могло испортить некоторые из моих библиотек. Теперь, когда я пытаюсь запустить отладчик Perl, я получаю следующее:

перл -д -е 0

Cannot do `initialize' in Term::ReadLine::Gnu at /opt/local/lib/perl5/5.8.9/perl5db.pl line 6006
 at /opt/local/lib/perl5/site_perl/5.8.9/darwin-2level/Term/ReadLine/Gnu.pm line 716
    Term::ReadLine::Gnu::AU::AUTOLOAD('Term::ReadLine=HASH(0x8f8b94)') called at /opt/local/lib/perl5/site_perl/5.8.9/darwin-2level/Term/ReadLine/Gnu.pm line 240
    Term::ReadLine::Gnu::new('Term::ReadLine', 'perldb', 'GLOB(0x85c690)', 'GLOB(0x855750)') called at /opt/local/lib/perl5/5.8.9/perl5db.pl line 6006
    DB::setterm called at /opt/local/lib/perl5/5.8.9/perl5db.pl line 2235
    DB::DB called at -e line 1
Cannot do `initialize' in Term::ReadLine::Gnu at /opt/local/lib/perl5/5.8.9/perl5db.pl line 6006
END failed--call queue aborted at -e line 44.
 at -e line 44
Config::DESTROY(/opt/local/lib/perl5/5.8.9/darwin-2level/Config.pm:63):
63: sub DESTROY { }
IO::Handle::DESTROY(/opt/local/lib/perl5/5.8.9/darwin-2level/IO/Handle.pm:330):
330:    sub DESTROY {} 

Я использую readline 6.1. У кого-нибудь есть идеи?

Спасибо


person nachocab    schedule 08.11.2010    source источник


Ответы (4)


Мне никогда не везло с версией Perl для Macport. Я всегда устанавливаю сам.

У вас не будут установлены одни и те же модули, потому что (например) 5.8, 5.9 и 5.10 не являются бинарно совместимыми. Для сборки рассматриваемого модуля, вероятно, требуется компилятор C.

Есть ли какая-то причина, по которой вы не хотите собирать и устанавливать современную версию Perl?

person tchrist    schedule 08.11.2010

Я только что столкнулся с этой проблемой на своем Mac. Интересно, что мои попытки войти в интерактивную консоль cpan также приводили к этой же ошибке.

Основываясь на некоторых результатах поиска в Интернете, я выполнил следующую команду: cpan install Term::ReadLine::Gnu

Это решило проблему для меня. Затем я смог войти в интерактивную консоль cpan, а также запустить отладчик perl, используя perl -d -e 0

person Gino    schedule 04.10.2017

Я не знаю, как это работает в OSX, но у меня была такая же проблема в Linux. Я решил это, установив libtermcap2 (deb) или compat-libtermcap (rpm).

Я нашел решение здесь

person Binsh    schedule 05.04.2014

я казнил

brew uninstall --ignore-dependencies term-readline-gnu-perl
brew install term-readline-gnu-perl

и это сработало.

person Alexander Davliatov    schedule 10.04.2019