2

我最近安装了 Perl 的草莓便携版。该网站说它是v5.16。

我使用 CPAN 安装Marpa::PP. 它安装成功。然后我用一个示例程序来测试Marpa::PP。当我尝试运行它时,出现以下错误:

Perl v5.10.0 required--this is only v5.8.0, stopped at perl/site/lib/Marpa/PP.pm line 18.
BEGIN failed--compilation aborted at perl/site/lib/Marpa/PP.pm line 18.
Compilation failed in require at F:\workdir\perl\perl32\sql_insert.pl line 1.
BEGIN failed--compilation aborted at F:\workdir\perl\perl32\sql_insert.pl line 1.

当我运行时perl -v,我得到:

This is perl 5, version 16, subversion 0 (v5.16.0) built for MSWin32-x86-multi-thread

请帮助我理解它。我的 perl 是 v5.16,错误说它只是 v5.8,并且Marpa/PP.pm 第 18 行中的代码use 5.010. 我认为这是造成问题的原因。另外,请建议我应该怎么做才能使它工作。

4

1 回答 1

3

你已经安装了多个版本的 Perl。

你跑到哪里,跑到perl -vwhich perl的完整路径。

现在,打开抱怨它是 Perl 5.8 的脚本。检查它的第一行,“shebang line”。编辑以匹配which perl命令的结果,假设脚本是由 shell 启动的,它应该开始由 Perl 5.16 运行。

如果您正在使用一些“点击运行”Windows 系统,您可能需要做更多的工作来将“.pl”扩展名与您在上面找到的 perl 的新路径相关联。

于 2012-08-10T15:12:10.563 回答