windows 8.1 Home 64bit で, Python がインストールされていない windows でも 実行できる Kivy アプリの exe を作製するまでの過程です.
長くなったので, Python, gcc 等をインストールする準備編, PyInstaller or Nuitka を使用する作製編に分割しました. 後日, ライセンス編も書く予定です.
私の場合, 作成したファイルをネットで公開するつもりなので, Python や gcc 等は 32bit を選択しています. ファイルのバージョンは, メモを書いていた時点での最新を選んでいます.
1. mingw-w64 32bit インストール
http://mingw-w64.org/doku.php/download/mingw-builds
で, Installation: Sourceforge をクリックするとページ遷移し, インストーラが自動的にダウンロードされます.
mingw-w64-install.exe
を実行し,
Ver 8.10 i686 posix sjlj 0
を選択します.
デフォルトのインストールパスが長いので,
C:\mingw-w64\i686-8.1.0-posix-sjlj-rt_v6-rev0
に変更します.
環境変数の Path に
C:\mingw-w64\i686-8.1.0-posix-sjlj-rt_v6-rev0\mingw32\bin\
を追加します.
コマンドプロンプトを開き,
gcc -v
と入力し, いろいろと情報が出てきたら成功です.
2. Python3 32bit をインストール
https://www.python.org/downloads/windows/
から, Stable Releases の, Nuitka が対応している最新バージョン (現時点では 3.7.5) の Download Windows x86 executable installer をクリックしてインストーラをダウンロードします.
python-3.7.5.exe
を実行します.
Add Python 3.7 to PATH にチェックを入れ, Install Now をクリックします. Path は自動的に追加されるようです.
3. Kivy をインストール
コマンドプロンプトを管理者として開き, 以下の, '#' でコメントアウトしていない行を順に入力します.
python -m pip install --upgrade pip wheel setuptools python -m pip install docutils pygments pypiwin32 kivy.deps.sdl2 kivy.deps.glew #python -m pip install kivy.deps.gstreamer #python -m pip install kivy.deps.angle python -m pip install kivy
インストールが終わったら,
pip list
と入力し, Kivy がインストールされていることを確認します.
*コメントアウトした行について
#python -m pip install kivy.deps.gstreamer
には, "Kivyには既にオーディオとビデオのプロバイダがありますが、より高度なものにはGStreamerが必要です。" と書いてあります. また, 動画プレイヤーも入っているらしいです. 私には必要なさそうなので入れませんでした.
#python -m pip install kivy.deps.angle
Kivy Windows Hello Worldへの道 真っ黒画面
には, "OpenGl ESのDirectX実装" と書いてあります. 必要かどうかわからないので, 必要になった時点で入れれば良いのだろうと思います.
4. Kivy のエラー対策
Windows で kv ファイルを読み込む際にエラーが出るようなので,
C:\Users\ユーザー名\AppData\Local\Programs\Python\Python37-32\Lib\site-packages\kivy\lang\
の (環境やバージョンによって場所は違うはず) builder.py を変更します.
if __debug__: trace('Lang: load file %s' % filename) with open(filename, 'r') as fd: kwargs['filename'] = filename data = fd.read()
の
with open(filename, 'r') as fd:
を
with open(filename, 'r', encoding='utf8') as fd:
に書き換えます.
5. PyInstaller をインストール (使用する場合)
python -m pip install pyinstaller
と入力し, 終了後,
pip list
と入力し, インストールされていることを確認します.
6. Nuitka をインストール (使用する場合)
python -m pip install nuitka
と入力し, 終了後,
pip list
と入力し, インストールされていることを確認します.
作製編 へ続きます.
参考ページ
MinGW-w64 を導入する − しっぽのさきっちょ MinGW-w64のダウンロードとインストール | C言語入門 Python3のインストール Installation on Windows(翻訳済み) − Kivy 1.10.0 ドキュメント Kivy を Windows で動作させると UnicodeDecodeError が発生する場合の対処方法