ActivePerl(5.24 2400[64bit])のParモジュールで、スクリプトをexe化する簡単な方法
2011年11月09日 :文責: 林 宏
・ActivePerlのParモジュールで、スクリプトをexe化する、avtiveperlの最新バージョンが分かる
簡単な方法が分かったので、まとめてみた。
・ActivePerl の最新は5.26.x なのに、なぜ 5.24.0 2400(64)をインストールしたのか?
・parというモジュールを使えば、スクリプトをexe化できるが、
par が動く ActivePerl の最新版は、5.24.0 2400(64)だったからだ!
5.24.0 2400(64)を使えば、簡単にparが動く。
・par が動くActivePerl の最新版を探すのに苦労した。
分かってしまえば簡単だった。
「ActiveState」のサイトに、ActivePerl とpar-packerの
バージョンの適合一覧が有った。
(* Last updated Oct 21st, 2017)
・動作最新バージョン
これによれば、(2017/11/09では)
perl 64bit(x64) 版は、ActivePerl 5.24 (64bit)で
perl 32bit(x86) 版は、ActivePerl 5.22 (32bit)であった。
・Perl 5.24 は 5.24.xではないので、注意しよう!
5.24.0 2400はexe化できたが、Perl 5.24.2 では、
「ActivePerl と par-packerのバージョンが合ってない!」と
エラーが出てしまった。
Contents
par が動くActivePerl (5.24 2400[64bit])のインストール記
ActivePerl 5.24.0 2400(64bit)のインストールについて
・ActivePerl 5.24.0 2400(64bit)を
Windows 10 Home Premium Searvice Pack 1 64bit にインストールした。
・「CUI」のppm-shell.bat を使わずに、「Gui」のppm.bat で実行
・対象モジュールは、フォーカスを当て、右クリックし[install]でマーキング
・マーキングが終わったら[File]->[Run Marked Action..]を押すと、
インストールが始まる。
・リポジトリは以下のとおり:チェック日(2017/11/09) 登録数
activestate:http://ppm4.activestate.com/MSwin32-x86-64int/5.24/2400/ 21,260
log4perl :http://log4perl.sourceforge.net/ppm/ 4
sisyphusion:http://www.sisyphusion.tk/ppm/package.xml 129
デフォルトモジュール以外のモジュールインストールについて
・昔?は、「tk」や「image-magick」は、ソフトを
インストールする必要があったが、
今は、モジュールをインストールするだけで、
「ActivePerl」と「tk」や「image-magick」のバージョンを
合わせる必要が無くなった。
・リポジトリの登録場所
メニューバーの[edit]から
->[Preferences]->[Ripositories]->[Add Riository]へ辿る。
・[Add Riository]画面で、以下のリポジトリを登録する
name :[sisyphusion]
Location:[http://www.sisyphusion.tk/ppm/package.xml]
を、入力したら[Add]ボタンを押し、リポジトリを登録(追加)する。
私のインストールモジュールについて
以前から使っていた
「Tk」
「image-magick」
「imager」
「Par」関係
等をインストールした。
・以下の順でインストールした。
* 印:ppm でインストール。
無印:最初からインストール済み
ActiveStateのモジュール
* imager
* OpenGL
* Term-ANSIScreen
* Win32::GUI
Sisyphusion のモジュール
・ image-magick のインストール
・ Tk のインストール
・par関連モジュールのインストール
(perl スクリプトの実行ファイル(.exe)が作れる
* par(1.015)
* par-dist(0.49)
* Parse::Binary
* Getopt::Argvfile
* Win32::Exe
* Module::ScanDeps(1.23) 0.98 以上が必要
* dmake(4.11.20080107)
* MinGW(4.63)
* par-packer(1.035) 5.24 2400[64bit])には 1.035 が必須
・par関連で一番重要なのが、par-packer モジュール
ActivePerl のバージョンとpar-packerのバージョンが
合わないと[ppを実行時]にエラーになる。
cpahのみにあるモジュール
・[cpan]に有るモジュール(XXX::XXX とすると) は、以下のように行う。
「コマンド・プロンプト(cmd)」を起動し
C:\> cpan -fi /XXX::XXX/
と、するとインストールが始まる。
ActivePerl とpar-packerのバージョンの適合性について
ActivePerl のバージョンと
par-packerのバージョンの適応については、
以下のサイトにしっかり書いて有った。
PAR-Packer Perl Package Manager Index (PPM) ActiveState Code
モジュールのアップデート
モジュールのアップデートを「GUI」の ppm で行うのは、結構面倒だ。
しかし、インストールした最初は、結構アップデートが必要なモジュールが沢山ある。
そこで、「コマンド・プロンプト(cmd)」で、アップデートをおこなう。
「cmd」コマンドを起動し
C:\> ppm-shell
とすれば、ppmの対話シェルが立ち上がりる。
ここではインストールされているモジュールを、
簡単にすべて最新版にアップグレード出来る。
ppm> upgrad
で、アップグレードされるパッケージが表示される。
アップグレードを実行する場合は以下のように「i」オプションを付ける。
ppm> upgrad -i
これで、後は、アップグレードされるのを待って(見て)いるだけだ。
<参考>モジュールをアップグレードしても、par(pp) は、無事?動作した。
まとめ
・ここまで設定できれば、私の不満は、殆ど無くなった。
・par での exe化は、[tk]等も含め、
ほぼ例外なく exe化できるので、嬉しい。。