2010-11-08 4 views
0

Недавно я установил MacPorts, и я думаю, что это могло испортить некоторые из моих библиотек. Теперь, когда я пытаюсь запустить отладчик Perl, я получаю это:(Perl) Не могу выполнить `initialize 'в Term :: ReadLine :: Gnu в Mac OSX 10.6

Perl -d -e 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. У кого-нибудь есть идеи?

Благодаря

ответ

0

Я никогда не везло с версией MacPorts на Perl. Я всегда устанавливаю свои собственные.

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

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

0

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

I found the solution here

0

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

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

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