はじめに
Apple Siliconを購入した後輩用にpyenv+pipenvのPython環境の構築方法(M1チップ版)をメモとして記すための記事です。
※Rosetta2(x86環境)
この記事は2021年4月段階に書いたものであり、
他により良い手段・記事が多くあるためブラウザバックしてください
Rosettaの使用を許可
-
Finderを起動
-
アプリケーション > ユーティリティ > ターミナル.app を右クリック
3.「情報を見る」をクリック
4.「Rosettaを使用して開く」 にチェックを入れる
Homebrewのインストール
The Missing Package Manager for macOS (or Linux) — Homebrew
公式Webページよりインストール用のコマンドを実行します。
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
インストールが終了すると
==> Next steps:
- Add Homebrew to your PATH in /Users/ユーザ名/.zprofile:
echo 'eval $(/opt/homebrew/bin/brew shellenv)' >> /Users/ユーザ名/.zprofile
eval $(/opt/homebrew/bin/brew shellenv)
- Run 'brew help' to get started
- Further documentation:
https://docs.brew.sh
とパスを通せと言われるので
$ echo 'eval $(/opt/homebrew/bin/brew shellenv)' >> /Users/ユーザ名/.zprofile
$ eval $(/opt/homebrew/bin/brew shellenv)
を実行。
$ brew -v
で入っているか確認。
pyenvのインストール
brewでpyenvをインストール。ついでに今後使うのもまとめて。
$ brew install pyenv
$ brew install pipenv
$ brew install zlib
pyenvのpathを設定。
$ vi ~/.zprofile
でシェルの環境設定ファイルを開き、
export PYENV_ROOT=${HOME}/.pyenv
if [ -d "${PYENV_ROOT}" ]; then
export PATH=${PYENV_ROOT}/bin:$PATH
eval "$(pyenv init -)"
fi
と記入
からの変更を反映
$ source ~/.zprofile
python本体のインストール
pyenvでpython3.9.4をインストール。
(python3.8系以前は少しややこしいので調べてね。)
システム全体(global)の使用バージョンを3.9.4で設定。
$ pyenv install 3.9.4
$ pyenv global 3.9.4
反映されているかを確認
$ pyenv version
>> 3.9.4 (set by /Users/ユーザ名/.pyenv/version)
と表示されればOK!
pythonのローカルバージョン管理
プロジェクトのディレクトリを作成し、移動。
$ mkdir ~/test
$ cd ~/test
そのプロジェクト内で使用するバージョンを指定
(今回は3.9.4しか入れてないので3.9.4を指定しますが、目的にあったバージョンをお使いください。)
$ pyenv local 3.9.4
$ pyenv version
>> 3.9.4 (set by /Users/ユーザ名/test/.python-version)
と表示されればOK!
pipenvでの仮想環境の作成
3.9.4の仮想環境を作成・実行
$ pipenv --python 3.9.4
$ pipenv shell
これで仮想環境に入れたので必要なライブラリをインストールしましょう。
$ pipenv install pandas
pandasのインストールでエラーが...
numpyを使用するライブラリ等をインストールする際にエラーが出る可能性有り
Error: An error occurred while installing pandas!
Error text: Collecting pandas
Using cached pandas-1.2.4.tar.gz (5.5 MB)
...
ERROR: Command errored out with exit status 1: /Users/ユーザ名/.local/share/virtualenvs ... Check the logs for full command output.
これは実際に後輩のM1 Macで起きたエラー。
原因はpipのバージョンっぽい?
解決策
仮想環境に入っている場合はまず脱出。
$ exit
pipが最新版の20.2.3 (2021/04/17時点)じゃないことを確認
$ cd
$ pip -V
入っているpythonのバージョンを確認し、
今後使うバージョンに合わせる(今回は3.9.4)
$ pyenv versions
$ pyenv global 3.9.4
pipのバージョンを最新にし、確認。
$ pip install --upgrade pip
$ pip -V
プロジェクトのディレクトリへ移動し、
仮想環境を削除 → 新規でインストール
$ cd ~/test
$ pipenv --rm
$ pipenv --python 3.9.4
これでpandasが入るはず!
$ pipenv install pandas
参考
- メディアクリエーション・データデザイン演習1(林康弘准教授) SPAプログラミング環境構築資料
- M1 Mac 向け Homebrew3.0.0 をインストールする
- 【M1】MacにHomebrwがインストールできない「zsh: command not found: brew」