[討論] 用PAR::Packer包WxPerl
WxPerl很難裝,現在用cpan又裝不起來了...
但是因為有WxGlade這個小工具可以生成現成的GUI code(儘管輸出的perl code有點
太tricky了)所以我還是很愛用
WxPerl的小程式寫完後就會想生出可執行檔 XD
所以試了一下,發現Wx的perl modules要自已引入 =.=
主要用PAR::Packer,如果在windows上可以用Wx::Perl::Packager(不過還是要有前者
安裝完成)
用很暴力的方法生出來
以下是醜醜的code
#!/bin/env perl
$wxdir = "/usr/lib64/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/Wx";
$str=" -M attributes";
for(glob("$wxdir\/*pm")){
$_=~/\/([^\/]+)\.pm/;
$str = $str." -M Wx::$1";
}
system("pp $ARGV[0] $str -o $ARGV[1]");
在windows下也是OK的,不過除了perl modules還要自己包Wxwidgets的DLL檔 =.=
以下是更醜一點的code
$dir = "C:\\strawberry\\perl\\site\\lib\\Wx";
$ldir = "C:\\strawberry\\perl\\site\\lib\\Alien\\wxWidgets\\msw_2_8_10_uni_gcc
_3_4\\lib\\";
$str = "";
for(glob($dir."\\*pm")){
$_=~/\\([^\\\/]+)\.pm$/;
$str = $str." -M Wx::$1";
}
for(glob($ldir."\\*dll")){
$str = $str." -l $_";
}
system("wxpar $str $ARGV[0] ");
其實有些時候還是要自已去check相依性… 像是WWW::Mechanize就要自已再補LWP進去
一點點小心得 :p
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.43.118.205
推
01/17 11:17, , 1F
01/17 11:17, 1F
推
01/17 18:24, , 2F
01/17 18:24, 2F
Perl 近期熱門文章
PTT數位生活區 即時熱門文章