Appleシリコン搭載のMacに kivy をインストール

Appleシリコン搭載のMacに kivy をインストールする方法について紹介する。

筆者のマシン
Mac mac mini (M1, 2020)
OS Big Sur バージョン 11.4


ここでは次の手順で説明する。

  1. はじめに
  2. kivy用作業ディレクトリを作成
  3. pythonの仮想環境を作成
  4. kivyに必要なモジュールをインストール
  5. kivyのインストール
  6. Hello World

はじめに

kivyインストール時の環境は下記

Python 3.8.2
pip3 21.1.2

ターミナルでRosettaを使用するように設定している。unameコマンドの結果は下記


user@hogenoMac-mini work % uname -a
Darwin hogenoMac-mini.local 20.5.0 Darwin Kernel Version 20.5.0: Sat May  8 05:10:31 PDT 2021; root:xnu-7195.121.3~9/RELEASE_ARM64_T8101 x86_64

kivy公式のインストールガイドはこちら
kivyのライセンスはMITである。ライセンスファイルはこちら

kivy用作業ディレクトリを作成

kivyディレクトリを作成する。


user@hogenoMac-mini work % mkdir kivy

pythonの仮想環境を作成

下記コマンドを実行し、最後の引数で仮想環境場所「venv」を指定する。lsコマンドでディレクトリが作成されたことを確認している。


user@hogenoMac-mini kivy % python3 -m venv venv
user@hogenoMac-mini kivy % ls
venv

下記コマンドを実行し、仮想環境を有効にする。


user@hogenoMac-mini kivy % source venv/bin/activate
(venv) user@hogenoMac-mini kivy % 

kivyに必要なモジュールをインストール

筆者はこのあと kivy-ios を使用する予定なので、kivy-iosのrequirementsを確認する。
2021/6/9 時点の requirements.txt の内容は下記の通り。
pbxproj==2.5.1
Pillow>=6.1.0
requests>=2.13
cookiecutter==1.7.2
sh==1.12.14
Cython==0.29.17

上記記載のうち、不足していた Cyton をインストールする。


user@hogenoMac-mini kivy % pip3 install cython
Defaulting to user installation because normal site-packages is not writeable
Collecting cython
  Downloading Cython-0.29.23-cp38-cp38-macosx_10_9_x86_64.whl (1.9 MB)
     |████████████████████████████████| 1.9 MB 6.5 MB/s 
Installing collected packages: cython
  WARNING: The scripts cygdb, cython and cythonize are installed in '/Users/hoge/Library/Python/3.8/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed cython-0.29.23

上記に、/Users/hoge/Library/Python/3.8/bin へパスが通っていないとWARNINGがある。本マシンのシェルは、次のようにzshである。


user@hogenoMac-mini kivy % echo $SHELL
/bin/zsh

ユーザーのホームにある .zshrc で、pathに「$/Library/Python/3.8/bin」を追加する。


user@hogenoMac-mini ~  % cat .zshrc 
export PATH="$HOME/Library/Python/2.7/bin:$HOME/Library/Python/3.8/bin:$PATH"
user@hogenoMac-mini ~ % source ~/.zshrc 

この時のインストール済みモジュールは下記の通り。

uer@hogenoMac-mini ~ % pip3 list
Package         Version
--------------- ---------
arrow           1.1.0
binaryornot     0.4.4
certifi         2021.5.30
chardet         4.0.0
click           8.0.1
cookiecutter    1.7.3
Cython          0.29.23
docopt          0.6.2
docutils        0.17.1
et-xmlfile      1.0.1
idna            2.10
jdcal           1.4.1
Jinja2          3.0.1
jinja2-time     0.2.0
MarkupSafe      2.0.1
numpy           1.19.4
opencv-python   4.4.0.46
openpyxl        3.0.5
openstep-parser 1.5.3
pbxproj         3.2.1
Pillow          8.2.0
pip             21.1.2
poyo            0.5.0
Pygments        2.9.0
python-dateutil 2.8.1
python-slugify  5.0.2
requests        2.25.1
setuptools      51.1.0
sh              1.14.2
six             1.15.0
text-unidecode  1.3
urllib3         1.26.5
wheel           0.36.2

kivyのインストール

pip3を用いてkivyをインストールする。


user@hogenoMac-mini ~ % pip3 install kivy
Defaulting to user installation because normal site-packages is not writeable
Collecting kivy
  Downloading Kivy-2.0.0-cp38-cp38-macosx_10_14_x86_64.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (7.1 MB)
     |████████████████████████████████| 7.1 MB 6.2 MB/s 
Collecting pygments
  Downloading Pygments-2.9.0-py3-none-any.whl (1.0 MB)
     |████████████████████████████████| 1.0 MB 8.1 MB/s 
Collecting docutils
  Downloading docutils-0.17.1-py2.py3-none-any.whl (575 kB)
     |████████████████████████████████| 575 kB 17.4 MB/s 
Collecting Kivy-Garden>=0.1.4
  Downloading kivy-garden-0.1.4.tar.gz (6.8 kB)
Requirement already satisfied: requests in ./Library/Python/3.8/lib/python/site-packages (from Kivy-Garden>=0.1.4->kivy) (2.25.1)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in ./Library/Python/3.8/lib/python/site-packages (from requests->Kivy-Garden>=0.1.4->kivy) (1.26.5)
Requirement already satisfied: idna<3,>=2.5 in ./Library/Python/3.8/lib/python/site-packages (from requests->Kivy-Garden>=0.1.4->kivy) (2.10)
Requirement already satisfied: certifi>=2017.4.17 in ./Library/Python/3.8/lib/python/site-packages (from requests->Kivy-Garden>=0.1.4->kivy) (2021.5.30)
Requirement already satisfied: chardet<5,>=3.0.2 in ./Library/Python/3.8/lib/python/site-packages (from requests->Kivy-Garden>=0.1.4->kivy) (4.0.0)
Building wheels for collected packages: Kivy-Garden
  Building wheel for Kivy-Garden (setup.py) ... done
  Created wheel for Kivy-Garden: filename=Kivy_Garden-0.1.4-py3-none-any.whl size=4532 sha256=11c354a49840529312e474ef91d60213b92dadd64df56fe1cc968fdc2d586dd4
  Stored in directory: /Users/hoge/Library/Caches/pip/wheels/d2/72/1a/9ddd17f00755707937caa350616965fb3330a6270425f397e6
Successfully built Kivy-Garden
Installing collected packages: pygments, Kivy-Garden, docutils, kivy
Successfully installed Kivy-Garden-0.1.4 docutils-0.17.1 kivy-2.0.0 pygments-2.9.0

Hello World

Hello World と表示させる簡単なプログラムを実行する。
参考にしたサイトは

kivy用作業ディレクトリに、コードを保存するディレクトリ sample 1 を作成し、そこに main.py を作成する。

main.pyファイルの記述


import kivy
kivy.require('1.0.6') # replace with your current kivy version !

from kivy.app import App
from kivy.uix.label import Label


class MyApp(App):

    def build(self):
        return Label(text='Hello world')


if __name__ == '__main__':
    MyApp().run()

python コードは VisualStudioCode で開発した。VSCodeのインストール方法はこちら

ファイル構成は下記。
kivy
  |– sample1
      |– main.py

VSCodeのターミナルで main.py を実行する。


user@hogenoMac-mini sample1 % python3 main.py 

下記のように Hello World が表示される。

補足:kivy-isoをインストールし使うことで、sample1 ディレクトリを指定してXCodeプロジェクトを作成することもできる。

以上

シェアする

  • このエントリーをはてなブックマークに追加

フォローする