Pythonのプログラムを「exe化」してWindowsでもPythonをインストールしなくても、プログラムで作成したアプリなどを使用できるようにしたいと思っている方はいるはずです。
通常だとWindowsでは、拡張子「.py」は動かせないので、exe化は必須です。
これを実現させるには、Pythonで、「.py」の拡張子を「.exe」変換するモジュールをインストールすることが必要になります。
Pythonで「py2exe」をインストールしてもうまく動かない
ということで、実際にPythonへ「py2exe」をインストールして、実際にexe化を実行してみたのですが、exe化の途中でエラーが発生し、正常にexeファイルを作成してくれません。
Pythonのバージョンは3.8を利用しているのですが、これがうまくいかないんです。
色々をネットを検索していると、実は「py2exe」はpythonのバージョン3.4までしかサポートしていないようなのです。。。
py2exeはpython3.4までしか動かない
ということで、今度はPython3.4をインストールし、再度「py2exe」をインストールしなおしました。
pythonのバージョン3.4のバージョンは以下となります。
C:Python>py -3.4 -V Python 3.4.4
複数のPythonをインストトールしているかたは以下のコマンドで、どのバージョンをインストールしているのか、リストで確認することが可能です。
※はデフォルトで利用できるPythonのバージョンとなります。
C:Python>py --list-paths Installed Pythons found by py Launcher for Windows -3.8-32 C:Users\0003563AppDataLocalProgramsPythonPython38-32python.exe * -3.7-64 python.exe -3.6-32 C:Users\0003563AppDataLocalProgramsPythonPython36-32python.exe -3.4-64 C:Python34python.exe
Python3.4で動かすために以下のコマンドでインストールを実行します。
C:Python>py -3.4 -m pip install py2exe Collecting py2exe Downloading https://files.pythonhosted.org/packages/6a/16/19bd8b59db4a61ff003aee258efd86a0aca050718435b1f54592ac870235/py2exe-0.9.2.2-py33.py34-none-any.whl (270kB) 100% |################################| 274kB 517kB/s Installing collected packages: py2exe Successfully installed py2exe-0.9.2.2 You are using pip version 7.1.2, however version 19.3.1 is available. You should consider upgrading via the 'python -m pip install --upgrade pip' command. C:Python>
実際に、Pythonでバージョン3.4で実行するために以下のコマンドを実施しますが、これがうまくいかないんです。
C:Python>py -3.4 -m setup.py py2exe
「py2exe」は仮想環境(anaconda)でもうまく動かない
結果的にいうとこれもダメです。
anacondaでは、3.4がインストールできないことと、それ以下でも2.7でないとインストールがサポートされていないんです。
py2exeは3.3、もしくは3.4でサポートされているとネットで書かれていました。
「py2exe」は諦めて「pyinstaller」を利用しよう
結局、今の最新バージョンではpy2exeはうまく動かないので、別のツールとして「pyinstaller」を利用することにしました。
pyinstallerはバージョン3.6までしかサポートされていませんが、これで一応動くので利用しています。
pyinstallerのインストールからexe化までは以下のページで紹介していますので、参考にしてください。
ちなみに、pyinstallerでは、exe化をした後は、サイズが大きくなっており、実際にexeファイルを実行しようとすると結構重いです。
今後の課題としては軽量化をすることを考えないといけませんね。
また、Windows10では、うまく動かないので、anacondaなどを利用して仮想環境から実行することをオススメします。
サーバーを構築するならVPSがおすすめです。
エンジニアのオンライン学習
ITエンジニアにおすすめの教材、オンラインスクールです。
無料からエンジニアの学習ができる教材などまとめているので参考にしてください。
おすすめオンライン教材 | |
自宅で学習ができるオンラインスクール | |
ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。
コメントを残す