I'm having a strange error trying to run a Perl script with ActivePerl on 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." means "System cannot find the specified path". The line the error is referring to is from Perl.pm:
eval {require Term::ReadLine::readline}; die $@ if $@;
What I understand is that it cannot find Term::ReadLine::readline, but the f开发者_JAVA百科ile C:\Perl\lib\Term\ReadLine\readline.pm is there. Also PATH is set correctly since I can run perl interpreter from anywhere without specifing the path.
The error happens only when using standard output redirection (>). Script passed to debugger doesn't matter, it crashes on all if output redirection used.
Any clues? Thanks in advance!
This may not help you if you must have a specific perl version, but I found this same error with my perl 5.8.5 install. I could not upgrade on one machine (for legacy code reasons), but I ran it in another perl environment with the latest perl (v5.14.2) and this "debugger" bug has been solved (although I suspect you may have the same result by updating the Term::ReadLine::* modules as well). By the way, this isn't specific to ActivePerl -- I saw this on Linux as well.
精彩评论