とつぜーん、君からの手紙 Python3 で GUI で exe化 だよー
思い立ったが吉日
やるべし
以下、長いので最終的にやったこと。
1、python3.5.0 64bit版インストール
2、pipをバージョンアップ
python -m pip install --upgrade pip
3、wxPythonインストール
pip install -U --pre -f https://wxpython.org/Phoenix/snapshot-builds/ wxPython_Phoenix
4、pyinstallerインストール
pip install pyinstaller
5、試行
pyinstaller test.py --onefile --noconsole
以下、やってみたらだめだったこと
・python3.5.2があるけど、現時点でwxPythonが3.5.0までしか対応してない。3.5.0を使うべし。
・UPXでファイルサイズ圧縮を試みたが、なぜかうまくいかず。ファイルサイズが大きいだけで実動作に問題はないからパス。
以上
さてさて、プログラミングへの興味は結構前からあった。
いまだにきちんと習ったことはないけどね。
大学生になって、ヒマだったからCを独学で勉強してみた。
タイピングソフト作ってすぐ飽きる。
会社入って、なんだかんだである言語に触れる。
いちおうCをやっていたので、すんなりと覚えることができた。
なんでもやっておくものだ。
やりたいーこと、やるべーきねー
それ以外にも、古典的なワンライナーだったりもする。
さらに、perlもかじった。こちらはPerl/tkでGUIにも挑戦した。
そして今日、python3でGUIに挑戦してみる!!
最先端!!(そうなのか?)
まずはpython3をダウンロード。
現在の最新版は3.5.2。トップページから迷わず最新版をゲッツ。
あれ、32bit版なんだ。キャンセルだ、キャンセル!!!
こちとら64bitマシン&OSじゃーい。気分は64bit。
ちょっと潜って64bit版の3.5.2をゲッツ。インストール。
インストーラにPath通してくれるオプションあったからチェック。
ええっ!
C:\Users\***\AppData\Local\Programs\Python\Python35
こんなとこにインストールされちゃった・・・汚された・・・
まぁいい。
ともかくpythonの起動は確認できた。
Qtは、なんとなく名前が嫌いだ。
SEGAサターンは名前が怖いからPSを買った小学校4年生。
んー、これ、python2.7用だ。3.5.2じゃだめじゃん。
ちょっとぐぐったら、python3用があるとのこと。
https://wxpython.org/Phoenix/snapshot-builds/
たしかに3.5用っぽい。
READMEを読んだら、以下のコマンドでインストールできることが分かった。
pip install -U --pre -f https://wxpython.org/Phoenix/snapshot-builds/ wxPython_Phoenix
どりゃーーー
むむっ、黄色い文字のワーニングと、赤い文字のエラーがでた。
黄色い文字にコマンドが書いてある。とりあえずやってみる。
python -m pip install --upgrade pip
どりゃーーー
何かがインストールされた。よし。
もう一度、エラーがでてたコマンドを打つ!!!
どりゃーーー
赤い文字は同じだった。黄色い文字は消えたけど。
んー。どうやら、python3.5用はあるけど、python3.5.2用は無いってことか?
しゃあなしで3.5.2はアンインストール。
3.5の64bit版を、C直下のPython35ディレクトリにインストール。
もう一度、さっきエラーがでたコマンド実行。
おおっ。wxPythonインストールが始まった。
と思ったら、結局エラーでた。ふぉ。
もう一度、これ ↓ 実行
python -m pip install --upgrade pip
で、再度、エラーがでたコマンド実行。
pip install -U --pre -f https://wxpython.org/Phoenix/snapshot-builds/ wxPython_Phoenix
でっ、でっ、で、できたー。
python3.5.0で、pipをバージョンアップして、それからwxPythonインストールが
正しい順番のようだ。
この方のコードを打ってみたら、無事GUIでた!へへーい。ありがとー。
Python3.4 64-bitでGUIプログラミングしてみる。: YATTSUKE BLOG
次はexe化
py2exe、HCpy-Standalone-B、pyinstaller
うーん。前者2つは複数ファイルを配布することになるみたい。(たぶん)
その点、最後のは全部まとめて1ファイル化できる。よっしゃ、これだ。
インストール
pip install pyinstaller
試行
pyinstaller test.py --onefile --noconsole
完璧や。
でも、たったこれだけでもファイルサイズが10MB
んんー。まぁいいけど。できれば小さくしたいなーーー
ということでUPX。exeを圧縮してくれるらしい。
https://github.com/upx/upx/releases/tag/v3.91
あれ、Windowsは32bit版しかない。大丈夫かな?→私はだめでした。
ということで、未圧縮そのままでいきます。
さーて、来週は飽きてるかな。
って、てれてー、ててれててれてー