Python開発環境をMacにインストールする(2024年10月)

※当サイトではアフィリエイト広告を利用しています

Python プログラミング 開発環境

Python開発環境をMacにインストールする(2024年10月)

2023-01-24

はじめに

MacにPythonの開発環境を構築する方法についてまとめました。
ここではHomebrewとpyenv、Python、OpenCVをインストールして、PythonからOpenCVが使える環境構築について解説します。

環境構築の手順

Pythonの環境構築の手順とインストールするバージョンは以下の通りです。

  1. Homebrewのインストール
  2. pyenvのインストール
  3. Pythonのインストール
  4. 仮想環境の作成
  5. OpenCVのインストール

インストールするMacは本投稿執筆時で最新のmacOS Sequoia 15.0.1 です。

Homebrew

Homebrewとは

Homebrewはパッケージ管理システムの一つです。パッケージ管理システムは主にオープンソースのアプリやライブラリなどを依存関係も含めてインストール/アンインストールを一元管理するもので、macOS以外にLinuxでも動作します。

Homebrewのインストール

HomebrewのWebサイトにインストールのためのコマンドが掲載されています。

赤い下線部分がHomebrewをインストールするコマンドです。赤い矢印で示すアイコンをクリックするとインストールスクリプトをコピーすることができます。

Homebrewサイト トップ

下記にもスクリプトを貼っておきます。

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

ターミナルを起動して、コピーしたインストールスクリプトをペーストして、リターンキー押下するとインストールが開始されます。

pyenv

pyenvとは

pyenvはPythonのバージョンをインストールするためのツールです。複数のバージョンをインストールして切り替えたり、ディレクトリ毎にインストールするバージョンを変えて、個別に管理するために使用します。

pyenvのインストール

インストールはHomebrewから行います。ターミナルで下のコマンドを実行します。

$ brew install pyenv

続いて、下のコマンドを実行して、.zshrcにPythonのパスの設定を行います。
設定の内容はpyenvのGitHubに記載されています。

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(pyenv init -)"' >> ~/.zshrc

次のコマンドで設定を反映させます。

$ source ~/.zshrc

Python

インストール可能なバージョンを調べる

pyenvでインストール可能なバージョンを下のコマンドで確認することが出来ます。
その中から、自分がインストールするバージョンを選択します。

$ pyenv install -list

実際にインストール可能なバージョンを確認してましょう。

$ pyenv install -list
  2.1.3
  2.2.3
  2.3.7
  2.4.0
  2.4.1
  2.4.2
  2.4.3
  2.4.4
  2.4.5
  2.4.6
  2.5.0
  (以下省略)

インストール可能なバージョンがたくさん表示されます。
anacondaやironpythonなどを一覧に見ることができますが、執筆時点でのPythonの安定版の最新バージョンである3.11.1をインストールします。

Pythonのインストール

% pyenv install 3.13.0

何やら、"Python lzma extension"がインストールできなかったという警告が表示されました。
Python自体は一応インストールできているようですが、気持ち悪いので対処したいと思います。

$ pyenv install 3.13.0
python-build: use openssl@3 from homebrew
python-build: use readline from homebrew
Downloading Python-3.13.0.tar.xz...
-> https://www.python.org/ftp/python/3.13.0/Python-3.13.0.tar.xz
Installing Python-3.13.0...
python-build: use readline from homebrew
python-build: use zlib from xcode sdk
Traceback (most recent call last):
  File "<string>", line 1, in <module>
    import lzma
  File "/Users/XXXXXXX/.pyenv/versions/3.13.0/lib/python3.13/lzma.py", line 27, in <module>
    from _lzma import *
ImportError: dlopen(/Users/XXXXXXX/.pyenv/versions/3.13.0/lib/python3.13/lib-dynload/_lzma.cpython-313-darwin.so, 0x0002): Library not loaded: /opt/homebrew/opt/xz/lib/liblzma.5.dylib
  Referenced from: <43601EBD-7B37-34FA-8EFB-CA15A3C01EAD> /Users/XXXXXXX/.pyenv/versions/3.13.0/lib/python3.13/lib-dynload/_lzma.cpython-313-darwin.so
  Reason: tried: '/opt/homebrew/opt/xz/lib/liblzma.5.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/opt/xz/lib/liblzma.5.dylib' (no such file), '/opt/homebrew/opt/xz/lib/liblzma.5.dylib' (no such file)
WARNING: The Python lzma extension was not compiled. Missing the lzma lib?
Installed Python-3.13.0 to /Users/XXXXXXX/.pyenv/versions/3.13.0

上のメッセージを読むと"lzma"見つからなかったようなので、あらかじめ"lzma"をインストールしてからPythonをインストールします。
Homebrewでインストールできないか、検索してみます。

$ brew search lzma  
==> Formulae
lima

If you meant "lzma" specifically:
lzma is now part of the xz formula:
  brew install xz

メッセージで"lzma"は"xz"の一部になっていると教えてくれました。
先ほどインストールしたPython 3.13.0をアンインストールしてから、"xz"をインストールします。

$ pyenv uninstall 3.13.0

続いて、"xz"をインストールしてから、Python 3.11.1を再インストールします。

$ brew install xz
$ pyenv install 3.13.0
python-build: use openssl@3 from homebrew
python-build: use readline from homebrew
Downloading Python-3.13.0.tar.xz...
-> https://www.python.org/ftp/python/3.13.0/Python-3.13.0.tar.xz
Installing Python-3.13.0...
python-build: use readline from homebrew
python-build: use zlib from xcode sdk
Installed Python-3.13.0 to /Users/XXXXXXX/.pyenv/versions/3.13.0

警告が出ることなくインストールできました。

バージョンを指定する

次はpyenvでバージョンの確認をします。pyenv versionsでインストール済みのPythonのバージョンの一覧を確認することが出来ます。

% pyenv versions
* system (set by /Users/XXXXXXX/.pyenv/version)

3.13.0

pyenvでは、今いるディレクトリ以下(local)で優先されるされるPythonのバージョンと、システム全体(global)でのPythonのバージョンを切り替えることが出来ます。pyenv versionsで先頭に”*”(アスタリスク)がついている方がglobalであることを示しています。

globalのバージョンを3.11.1に変更します。

% pyenv global 3.13.0

変更が反映されているか確認します。

% python --version   
Python 3.13.0

OpenCV

OpenCVとは

OpenCVは”Open Source Computer Vision Library”を略したもので、オープンソースの画像処理ライブラリです。
C++言語で開発されたライブラリですが、現在では様々なプログラミング言語をサポートしていて、Pythonで利用することも出来ます。

OpenCVのインストール

OpenCVをPythonで利用するためにpipというツールを使用してインストールします。

pipとはPythonの標準機能として組み込まれたPythonで開発されたパッケージを管理するためのパッケージ管理システムです。
ターミナルでpipを操作します。パッケージをインストールするためのコマンドは以下の形式となります。

コマンド

python -m pip install パッケージ名

OpenCVをインストールするコマンドは下の様になります。

$ python -m pip install opencv-python

おわりに

macOSにPython をインストールする過程を解説しました。

pyenvを使うことで複数のバージョンを簡単にインストールできて、バージョンの切り替えも行うことも可能です。

また、本投稿でOpenCVを利用できる環境が整いましたので、下の記事を参考にOpenCVを使ってみてください。

参考記事

下の投稿では、コードエディタのVisual Studio Code(VS Code)を使って、Pythonのデバッグができる環境を整えるまでを解説しています。

参考記事

最後までご覧頂きありがとうございました。

(広告)Python関連書籍をAmazonで探す

参考リンク

-Python, プログラミング, 開発環境
-,