PyInstaller と Inno Setup を使うことにしました。
cx_Freezeは、Python単体で setup.exe や setup.msi を作成できて便利でしたが、最近のPythonに対応
していないらしく、Python-2.7 や Python-3.4 でビルドできなくなっているようです。
PyInstallerはPython-3.0系にまだ未対応ですが、この差はあまり気にしなくてもいいでしょう。
(Python3.xからPython2.xに、PyQt5からPyQt4に書き換えましたが、案外楽でした。)
作成されるバイナリサイズは、MS Visual 2010 C++ Redistributable Packageを含んでいるにも関わらず、
cx_Freezeのときよりも若干小さくなりました。 (27MBから13MB。それにしても大きいですよね)
PyInstaller を使ってバイナリを作成する
PyQt4でapiバージョン2を使う場合は、ランタイムフックを使う。> PyInstaller.exe --noconsole --runtime-hook rthook_pyqt4y.p moeItem.pyw
Inno Setup を使って、install.exe を作成する。
Inno Setup単体を使うのではなく、(QuickStart Packに含まれる) Inno Script Studioから使うと簡単です。Inno Setup自体は日本語対応していますので、日本語のインストールメニューが作成できますが、
Inno Script Studioや各種マニュアルが英語なので、ちょっとやっかいではあります。
install.exeを作る人って、案外少ないのかもしれませんね。
0 件のコメント:
コメントを投稿