首页 > 解决方案 > 从 Perl 脚本创建可执行程序

问题描述

我正在尝试从完成的 perl 脚本制作一个可执行程序。我毫无困难地安装了 PAR::Packer 模块。但是,我不相信我这样做是正确的。下面是我要编译的脚本中的代码:

use PAR::Packer qw(pp);

my %pp;
% pp -o prlgap.exe prlgap.pl;

以上是我在Perl Monk上找到的一个示例。如果我运行脚本并收到以下错误:

Unquoted string "prlgap" may clash with future reserved word at
C:\Strawberry\prlgap.pl line 15. Syntax error at
C:\Strawberry\prlgap.pl line 15 near "% pp -o "

代码中的第三行是第 15 行。试图通过运行程序来编译它似乎很奇怪。根据我的经验,这一直是在外部完成的。我错过了什么?

标签: perlstrawberry-perlparperl-packager

解决方案


经过一些网络搜索,我发现这是在外部完成的。只需pp program.pl在命令提示符下。需要注意的是,如果你有快速运行循环的东西,这样做真的会刹车。此外,生成的可执行文件非常大。在我删除了它不需要的任何模块之后,我的 65 行脚本编译成一个 8 兆字节的程序。Strawberry 安装程序添加了环境变量,这使得从驱动器上的任何位置运行脚本成为可能。它只需要将.pl扩展​​名添加到名称中。Program.pl例如。

谢谢大家的回复...


推荐阅读