setup.pyが使えなくなった
これらの文献を参考に、pythonファイルを実行ファイルに変換しようとしましたが、タイトルの通りエラーが出てしまいました。
どうやらsetup
は使えなくなった模様。
そこで、
こちらの記事を参考に、新しいfreeze
メソッドを用いた変換の手順を記していきます。
freezeの使い方
-
変換したいファイルを用意する。ここではtest.pyとします。
-
変換用のpythonファイルを作成していきます。名前はおそらく何でもいいのですが、今回は仮にsetup.pyとします。
pythonfrom distutils.core import setup import py2exe py2exe.freeze(console=['test.py'])# 変換したいファイル名
-
test.pyとsetup.pyをどこか適当なディレクトリのフォルダ内に安置します。このとき、変換用の2ファイルと同一階層内に別のフォルダがあると、
error multiple top-level packages discovered in a flat-layout py2exe
というエラーが出現するようです(詳しくは未確認)。私の環境では変換用に新たに1つフォルダを作成し、その中に2ファイルを移動させることで回避できました。
-
setup.pyを実行。
-
フォルダ内にdistという新しいフォルダが作成されるので、その中を確認するとexeファイルが生成されている。
setupはもう使えないが、簡単にexe化できる。
小さなファイルであれば所要時間もほとんど変わらず変換できそうです。