Python3.6系でのKivyインストール、習作のためのKivyアプリケーション作成途中で頓挫したため、備忘録。
個々の環境依存がある可能性もあるので、Python3.6で動作するかもしれません。
FAQ (https://kivy.org/docs/faq.html#does-kivy-support-python-3-x) にも 3.3以上と記載されていたのでインストールしていた 3.6.0 でも大丈夫だと思っていました。
※2017/08/29 時点での情報です。
環境
以下の構成でKivyのインストールを実施。
- OS: macOS Sierra
- Kivy 1.10.0
- Homebrew
- pyenv ( global 3.6.0 )
Kivy 導入手順は https://kivy.org/docs/installation/installation-osx.html の通りに実行。(Homebrew with pip で実施)
が、正常に動作しなかった
- 例外スロー:
pygame - ModuleNotFoundError: No module named 'pygame'
- pip install pygame を実行し pygame をインストールするも、描画が正常に機能しない(canvas・Image・Label・のレンダリング、BoxLayoutが機能しない等)
- ウインドウが正常にフォアグラウンドにならない
- ウインドウリサイズ後の再描画イベントが発生しない
Python 3.4系をインストール
- Homebrew (全て削除し、1から入れ直した)
- pyenv install で Python 3.4.6 をインストール
再度、Kivy のインストールを実施
意図したとおりの動作結果となった
Homebrew自体をインストールし直したので改めて Python 3.6.0 + Kivy をインストールしたが、上記のエラーが発生し、やはり正常に動作しなかった。
stackoverflow にも類似のスレッドがあった。
Kivy 界隈では 3.4 系がデファクトなのかもしれないが、初見だったため自分のプログラムの方を何度も見直していたが、今回は実行環境のバージョンによるトラブルだった。