Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1163627
  • 博文数量: 146
  • 博客积分: 6619
  • 博客等级: 准将
  • 技术积分: 1621
  • 用 户 组: 普通用户
  • 注册时间: 2008-02-29 14:06
文章分类

全部博文(146)

文章存档

2020年(1)

2019年(4)

2018年(3)

2017年(5)

2015年(5)

2014年(7)

2013年(5)

2012年(11)

2011年(15)

2010年(13)

2009年(14)

2008年(63)

分类:

2008-04-19 20:51:51

今天偶然看到论坛上有人问perl生成exe的问题,就在网上搜了一下,发现不仅仅是perl2exe一种方法,还可以使用par来生成,就自己试验了一下,不过par安装不是很容易,花了一个多小时才把它搞定,记录下来备忘。

第一步:ppm install par
这个比较简单,当然如果幸运的话,你应该可以直接使用par了,但是我没有那么幸运,因为安装之后找不到pp.bat,实际上这是ActivePerl的问题,没办法只能往下继续了。

第二步:重新安装par-packer
不过之前要更新一个模块File-Temp,我原来的版本是0.12,太低,换成0.18的
 ppm install
然后安装par-packer 0.975
ppm install

第三步:这时已经可以使用pp.bat了,但是你会发现pp不能生成exe文件,总是报
erl lib version (v5.8.8) doesn't match executable version (v5.8.6)的错误,
原因在于二进制不兼容,需要继续修改。

第四步:下载5.8.8的par-packer


第五步:从par文件中提取
Static.pm和
Dynamic.pm两个文件(par可以用zip打开),用这两个文件替换C:\Perl\site\lib\PAR\StrippedPARL目录下的同名文件。

第六步:打开C:\Perl\site\lib\PAR\StrippedPARL目录下的base.pm,将第71行修改为
my @libs = (map {"-I\"$_\""} @INC);

第七步:执行pp -o t.exe t.pl,一切都OK了。

(par生成的可执行文件比较大,这是个缺点)
阅读(5355) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~