Ошибка отладчика Perl @ C: /Perl/lib/Term/ReadLine/Perl.pm строка 65 - PullRequest
1 голос
/ 15 сентября 2011

У меня странная ошибка при попытке запустить Perl-скрипт с ActivePerl в Windows XP:

>perl -d quick_translate_missing.pl < translate_en.txt > new.txt

Loading DB routines from perl5db.pl version 1.33
Editor support available.

Enter h or `h h' for help, or `perldoc perldebug' for more help.

main::(quick_translate_missing.pl:9):
9:      my $not_translated = '\'EN_([\w\s]+)\'';
El sistema no puede hallar la ruta especificada.
Unknown error
Compilation failed in require at C:/Perl/lib/Term/ReadLine/Perl.pm line 65.
 at C:/Perl/lib/Term/ReadLine/Perl.pm line 65
        Term::ReadLine::Perl::new('Term::ReadLine', 'perldb', 'GLOB(0x1968f34)',
 'GLOB(0x1927e7c)') called at C:/Perl/lib/perl5db.pl line 6068
        DB::setterm called at C:/Perl/lib/perl5db.pl line 2241
        DB::DB called at quick_translate_missing.pl line 9
Attempt to reload Term/ReadLine/readline.pm aborted.
Compilation failed in require at C:/Perl/lib/Term/ReadLine/Perl.pm line 65.
END failed--call queue aborted at quick_translate_missing.pl line 65.
 at quick_translate_missing.pl line 65

"El sistema no puede hallar la ruta especificada".означает «Система не может найти указанный путь».Строка, на которую ссылается ошибка, взята из Perl.pm:

eval {require Term::ReadLine::readline}; die $@ if $@;

Я понимаю, что он не может найти Term :: ReadLine :: readline, но файл C: \ Perl \ lib \ Term \ReadLine \ readline.pm есть.Также PATH установлен правильно, так как я могу запускать Perl-интерпретатор из любого места без указания пути.

Ошибка возникает только при использовании стандартного output redirection (>).Скрипт, передаваемый отладчику, не имеет значения, он падает на все, если используется перенаправление вывода.

Есть какие-нибудь подсказки?Заранее спасибо!

1 Ответ

1 голос
/ 23 февраля 2012

Это может не помочь, если у вас должна определенная версия perl, но я обнаружил ту же ошибку при установке perl 5.8.5.Я мог не обновить на одной машине (по причинам устаревшего кода), но я запустил его в другой среде perl с последней версией perl (v5.14.2), и эта ошибка «отладчика» была решена (хотя я подозреваю, чтовы можете получить тот же результат, обновив также модули Term :: ReadLine :: *).Кстати, это не относится к ActivePerl - я видел это и в Linux.

...