Perl のないマシンで実行できるように Perl スクリプトをパッケージ化するにはどうすればよいですか?
-
09-06-2019 - |
質問
人々はまた、「どうすればPerlをコンパイルできますか?」とよく尋ねます。彼らが本当に望んでいるのは、Perlがインストールされていなくても、マシンで実行できる実行可能ファイルを作成することです。
私が知っている解決策はいくつかあります。
- perl2exe Indigostarの商業的です。試したことはありません。同社の Web サイトには、Win32、Linux、Solaris をクロスコンパイルできると記載されています。
- Perl開発キット アクティブステートから。それは商業的です。数年前に Windows で使用しましたが、私のニーズにうまく対応しました。同社の Web サイトによると、Windows、Mac OS X、Linux、Solaris、AIX、HP-UX で動作します。
- パー というより PAR::パッカー それは無料でオープンソースです。テストレポートによると、Windows、Mac OS X、Linux、NetBSD、Solaris で動作しますが、理論的には他の UNIX システムでも動作するはずです。最近、Linux でのパッケージ化に PAR を使用し始めましたが、Windows でも同様に使用する予定です。
他に推奨される解決策は?
解決
質問に記載されている 3 つのツールに加えて、次のツールがあります。 カバパッケージャー Mark Dootson によって書かれました。 パー 過去に。これは Windows 上でのみ実行され、優れた Wx GUI を備えており、すべてを含む単一のアーカイブを作成するのではなく、すべての Perl 依存関係をsource / lib ディレクトリにアセンブルするという点で、典型的な 3 つの候補とは動作が異なります。無料版もありますが、オープンソースではありません。テスト以外では使用していません。
PAR に関して言えば、これはまさにツールキットです。これには、依存関係のスキャンとスタンドアロン実行可能ファイルのアセンブリを行うパッケージ化ツールが付属していますが、Java の JAR に似た、いわゆる .par ファイルの生成と使用にも使用できます。も付属しています クライアント そして サーバ 不足しているパッケージをネットワーク経由で自動的にロードするためなど。の 私のPAR講演のスライド で YAPC::EU 2008 年にはこれについてさらに詳しく説明されています。アクティブなメーリング リストもあります。Perl dot org でのパー。
他のヒント
初めてこの質問をされてから時間が経ちましたが、 カバパッケージャー 現在、Windows、Linux、Mac OS X 用の実行可能パッケージを作成できます。もはや Windows だけではありません。
注記:名前の通り、Cava Packagerに所属しております。
私は Perl の初心者で、Cava Packager をダウンロードしたところですが、動作していることがわかったのはこれだけです。Windows XP 上の PAR-Packager で ActiveState 5.10.1005 と Strawberry Perl を試しました。pp はストリームの途中でハングするだけで、実行可能ファイルは作成されません。
これまでのところ、Cava は Windows 上で exe を作成するための唯一のソリューションを提供しています。ありがとう。
を使用できます perlcc
Perl のほとんどのディストリビューションに同梱されているツールです。私も両方見つけました perl2exe
Active State の Perl 開発キットは、Perl アプリケーションの配布に役立ちます。