PCB论坛网

 找回密码
 注册
查看: 5198|回复: 14

[原创]Pdk编译perl教程

[复制链接]
发表于 2009-11-2 22:07:00 | 显示全部楼层 |阅读模式

Pdk编译perl教程

 

1.首先选取perl

   结合目前pdk版本与perl的兼容性,经多次测试最终我选择了perl5.8.8.824这个版本。

   虽然现在perl已经有8.10正式版了,要考虑pdk既可以编译win平台,也要支持编译

   linux平台和solaris平台。在activestate网站并没有太多的这三平台的共同兼容的模块

(主要是tk方面的),我是从perl5.8.8.818一直测试到perl5.10.1.1006版本。

   如果你只是编译win平台下,那perl5.10完全没问题。Perl5.10不带tk模块,需要自行安装(稍候告诉大家如何安装)。

perl5.8.8.824之后版本的ppm可以自动更新模块了。也就是说可以利用ppm安装模块!

ppm自动更新地址设置成上图所指示位置(一般默认)。

回复

使用道具 举报

 楼主| 发表于 2009-11-2 22:09:00 | 显示全部楼层

[原创]Pdk编译perl教程

在主窗口选中需要安装的模块按右键安装,默认安装在site位置(建议的位置),

要想编译多平台的话,最好所有模块都让系统自动安装,要安装的模块既要支持win,也要支持其他平台,否则编译其他平台就编译不成功.

只是编译win下就没此要求,随便安装就是了。

如果你想下载来自cpan的模块安装的话,就要手动安装了。

你需要下载cl.exenmake.exe放在环境变量path下,只需要安装时将make换成nmake即可。一般模块都可以安装。

Tk模块建议选择804.028版本,027版本的hlistDragDrop有小小bug.

1.       选择pdk

选择的是支持perl5.10版本的pdk.但此版本只支持perl5.10.1004以下版本

如果用高于1004版本,则就不能自动更新模块了(在编译时所有平台自动更新).

以下有2点注意:

   * pdk编译的64位不太理想(也许是其它原因),就算编译成功在运行时也会释放一大堆临时垃圾。

   * 编译的32位在linuxsolaris以及win系统完美运行,genesis软件本身就是32位的。

下面是pdk主要的设定,没有提到的都为默认。

  在编译之前先将genesis.plgenesis.pm复制到perl/site/lib下,包括linux solaris

这两个平台的perlhome下的

\Local Settings\Application Data\ActiveState\PDK\PerlApp\target-perl\824

(选择了编译平台时会自动安装)

注意,你要将模块安装在/site/lib下,pdk才会自动同步更新。(前提是activestate网站有支持此平台的模块)。

如果有的用户不能直接上网,内网代理也可以更新。

回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-2 22:12:00 | 显示全部楼层

[原创]Pdk编译perl教程

在环境变量中设置 http_poxy http://ip:端口/

   Target是选择编译的程序支持的平台

        Windows(native)是默认win32位的。

        Linux(x86)linux32

        Solaris (Sparc 32-bit)sun sparc 32

其它的自己体会吧!

选择后pdk会自动安装相应的perl

回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-2 22:14:00 | 显示全部楼层

[原创]Pdk编译perl教程

Added modules这里要加Socket模块,否则genesis不能运行此程序

Bound files要加一shellwords.pl

Icon sources是真对win系统程序的icon,随个人爱好了!

回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-2 22:17:00 | 显示全部楼层

[原创]Pdk编译perl教程

Don’t compress files in executable编译的程序要不要压缩,压缩后当然会小些,但运行速度快慢在linuxsolaris上感觉不到,在windows上可能压缩的要慢些(个人觉得,也许是机器配置低的缘故),凭自己测试吧!

Clean up temporary files …程序执行完侯清除临时文件

Use the in-memory dynamic dll-loader at runtime执行期间在缓存中载入动态连接库,而不是

在临时文件中调用。

Hide console隐藏运行时的黑屏窗口,如果你编译的程序不涉及到genesis,你可以选择此功能,否则此选项不能勾选。

Verbose logging during run在编译时显示详细过程

Display all warnings在编译时显示所有警告

回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-2 22:20:00 | 显示全部楼层

上传完毕!

希望对大家有帮助!!

有问题联系QQ525751321

回复 支持 反对

使用道具 举报

发表于 2009-11-3 20:40:00 | 显示全部楼层
     顶。
回复 支持 反对

使用道具 举报

发表于 2010-7-12 11:23:06 | 显示全部楼层
非常好..........
回复 支持 反对

使用道具 举报

发表于 2010-7-12 13:51:44 | 显示全部楼层
就是无法使用use encoding 'euc_cn'来显示
回复 支持 反对

使用道具 举报

发表于 2010-11-19 11:51:02 | 显示全部楼层
兄弟,图片看不到,怎么加载模块!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|手机版|PCB设计论坛|EDA论坛|PCB论坛网 ( 沪ICP备05006956号-1 )

GMT+8, 2024-4-27 19:03 , Processed in 0.162198 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表