我必须从 Perl 脚本创建一个 exe。我安装了
ActivePerl-5.14.2.1402-MSWin32-x86-295342.msi
如何安装pp?
我知道这是一个相对古老的问题,但为了其他人,这里有一个使用 pp (Par Packager)对我有用的解决方案:
get pp
install pp
c:\strawberry\perl\site\bin\pp.bat -o myScript.exe myScript.pl
注意:您可以使用-d命令行开关来减小可执行文件的大小。这不会在可执行文件中包含 perl 解释器代码,从而减小了可执行文件的大小,但是您需要在与可执行文件相同的目录中提供perl5x.dll ,或者将其包含在 PATH 环境变量中。
在解决问题之前1.010
,请执行以下操作:
从“其他版本”下拉列表中,选择PAR-Packer-1.009
并下载它
解压存档,保留目录结构
跑perl Makefile.PL
使用 . 手动安装所有缺少的先决条件ppm
。例如ppm install Module::ScanDeps
等
安装明威:ppm install MingW
dmake
, 那么dmake test
, 那么dmake install
稍后,您可以使用GUIPAR::Packer
从站点区域中删除并安装固定版本。ppm
这是一个名为PAR::Packer的 Perl 模块,因此它可以作为任何带有 CPAN 的 Perl 模块安装。不幸的是,您使用的 ActivePerl 与 CPAN 不太兼容。相反,您可以查看是否使用 ActiveState 的Perl 包管理器来安装此模块。
如果该模块无法通过 Perl 包管理器获得,您可以尝试使用 CPAN 命令行实用程序进行安装。打开控制台窗口(开始->附件->命令提示符)并输入cpan
并按<ENTER>
。当您第一次开始使用 CPAN 时,较新版本的 ActiveState 应该会自动安装所需的编译器等。
我更喜欢Strawberry Perl for Windows,因为它与 CPAN 更兼容。然而,ActivePerl 已经安装了很多 Win32 模块。另外,它带有一个很好的 Perl 包管理器。
警告:ActiveState 安装了很多这些 Perl 脚本,但不是在C:\Perl\bin
,但这C:\Perl\Site\bin
意味着您必须确保该目录也在您的路径中。
从 v1.010 开始,软件无法自动打包,详见Trouchelle 的 repo报告。
使用 PPM 安装 CPAN,然后按照Stack Overflow Perl FAQ继续:安装缺少的 Perl 模块的最简单方法是什么?
ppm install MinGW
cpanp i Win32::Exe PAR::Packer
除了上面的答案,您还可以使用 cpan 来安装 PAR::Packer。在 Windows 命令提示符下使用命令:cpan install PAR::Packer。注意:我安装了 Strawberry perl。cpan 也会安装模块和依赖项。