cx_Freezeでpython3.2を実行形式(.exe)にする
pythonスクリプトをexeにするには、cx_Freeze / py2exe / PyInstallerと方法がいろいろあります。今回はcx_Freezeを使う方法を試してみたいと思います。
環境はWindows 7 Home Premium(64bit)。Python、PySideのインストールは前回の記事を参考にして下さい。
インストールするもの
・cx_Freeze-4.2.3.win-amd64-py3.2.msi
・実行形式(.exe)に変換
test.py
-
import sys
-
from PySide.QtCore import *
-
from PySide.QtGui import *
-
-
def main():
-
app = QApplication(sys.argv)
-
# Create a Label and show it
-
label.show()
-
# Enter Qt application main loop
-
app.exec_()
-
-
if __name__ == '__main__':
-
main()
setup.py
-
from cx_Freeze import setup, Executable
-
-
setup(
-
name = "test",
-
version = "0.1",
-
description = "test",
-
executables = [Executable("test.py")])
上記スクリプトを同じ場所に保存して、コマンドプロンプトで次のコマンドを実行します。
-
setup.py build
問題点
・パスに日本語を含む場所で実行すると「Fatal Python error: cannot get zipimporter instance」とエラーになる。
・64bitで作成したファイルは32bitで実行できない?
・簡単なプログラムでも結構な容量になる。