u nextで息抜きする組み込みエンジニア

u nextで息抜きをするけいさんが語る組み込みエンジニアの転職や将来性のこと

Python 3.8 exe化が消える 【exeができないを解決した方法】

この記事をシェアする


解体工事 水道屋 クリーニング

python exe化 出来ない

python3.8でexe化できない症状を体験したので解決した方法をシェアします。

 Windows10を使ってPythonのプログラムを使っています。

pyinstallerでpythonプログラムをexe化できるのですが、実際にやってみるとexeファイルが出来ない。。。苦笑

たぶん、はまる人がいると思います。 

 

 

Python 3.8 exe化できないを解決した方法

ググると、pyinstallerはPython3.6までしかサポートしてない。。ということです。

自分が使っているのはPython3.8。。あらダメなの?

バージョンを3.6まで下げたらexe化できました。というブログ記事も。。

バージョンを下げてOKにする方法は芸がないので他を探したらありました。

Pyinstallerのホームページをみると、Python3.6-3.9までサポートしていると書いてある。。あれ? 新しいバージョンのPyinstallerにアップグレードすると行けそうです。

pyinstaller.readthedocs.io

 

Pyinstallerの中に書いてあるのが正しいアップグレードの方法です。

 

しかし、管理人は、次の方法でアップグレードしてexe化が出来ました。

pip install https://github.com/pyinstaller/pyinstaller/archive/develop.tar.gz

python exe化できない

 

Pyinstallerのインストールの方法

pyinstaller インストール

そして、インストールの方法をチェックすると次のように書いています。

 

PyInstallerをインストールする方法
PyInstallerは通常のPythonパッケージです。アーカイブはPyPiからダウンロードできますが、利用可能な場合はpipを使用してインストールする方が簡単です。例:

pip install pyinstaller
または新しいバージョンにアップグレードします。

pip install --upgrade pyinstaller
現在の開発バージョンをインストールするには、以下を使用します。

pip install https://github.com/pyinstaller/pyinstaller/tarball/develop

引用元:How to Install PyInstaller — PyInstaller 4.3 documentation

個人的にはpipでインストールす方法がおすすめです。

 

Python exe化 する方法

Pythonのプログラムをpythonを使ったことがない人に使ってもらうのはexe化するのが手っ取り早いです。

 

pyinstaller [ファイル名] --onefile

 

と書くことでpythonのプログラムをexe化できます。

 

--onefile とすることで、1ファイルのバンドルされた実行可能ファイルを作成することができます。

 

これは便利です。

 

まとめ

今年に入ってからpythonを使うことにはまってます。

セレニウムを使うことによっていろいろなことが出来るのが面白いです。

本職は、C言語の組み込みの設計・開発の電気を担当しているのですが、Pythonを使いだしたらやりたいことが増えてきました。

昨年は、PHP、Javascript、SQLの操作についてプロゲートで基礎の基礎を理解できたのでウェブ関係で作りたいものを作っています。

やはり、自分で作って経験しないとプログラムは身につかないですね。

一度作り出すとはまりますよ。

 

先日、80歳のプログラムを作るおばあさんがアップルで表彰されました。

人生100年時代。 新しいことに挑戦する気持ちが無くなったら年齢関係なくもったいないなぁ~と思います。

 

pythonについて開発環境から、経験したことについて当ブログでまとめてみようと思います。 何度か、ブログ記事にしたのですが、バラバラだったので、頭の整理がてらブログ記事にしてみますので、興味があったら一緒にプログラムで何か作ってみませんか?

アイディアを作るところから1人~3人くらいかなら無料でサポートできます。 興味がある人がいればぜひお気軽に声をかけてくださいね。。

 

ワードプレスの設定の仕方とかでもOKっす。(笑)