PerlApp-generated-exe无法加载包

时间:2014-05-20 22:29:43

标签: perl eclipse-pdt activeperl perlapp

PerlApp生成perl脚本到可执行文件。我在使用PerlApp时遇到了问题  以下是步骤:

  1. 使用以下2行生成perl脚本(e.pl) 要求日期:: Manip; 要求Date :: Manip :: DM6;
  2. perlapp e.pl --add Date :: Manip --add Date :: Manip :: DM6
  3. e.exe会产生以下错误: C:_test> e.exe 错误加载模块:日期:: Manip :: DM6 atDate/Manip.pm第35行。

2 个答案:

答案 0 :(得分:3)

您需要添加的不仅仅是Date :: Manip :: DM6:

perlapp --add Date::Manip::** e.pl

通配符表示应添加Date :: Manip命名空间中的所有子模块,包括一些超过1级的子模块。错误是因为DM6依赖于这些其他子模块,其中一些似乎是隐含的。

此外,您不需要require Date::Manip::DM6,因为这不是您使用该模块的方式。版本6会自动使用,具体取决于你的perl版本,它包含在你编译的exe中。

答案 1 :(得分:1)

以防您遇到XY Problem

考虑使用pp代替PerlApp。以下工作正常:

use strict;
use warnings;

use Date::Manip;

print "Hello World\n";

然后打包:

pp hello_date.pl