現象
anyenv 経由で pyenv をインストールして、python バージョンをセットした。しかし、pyenv の python を見てくれない。
$ pyenv versions
system
* 3.9.4 (set by /Users/kaori/.anyenv/envs/pyenv/version)
$ which python
/usr/bin/python
また、ターミナル起動時に以下のワーニングが発生。
WARNING: pyenv init - no longer sets PATH
実行環境
- MacBook Pro (13-inch, M1, 2020)
- OS Version 11.3.1
- anyenv 1.1.2
- pyenv 1.2.27
本現象は、2021/05/10 時点で確認。
原因
WARNING: pyenv init - no longer sets PATH にあった。
最近アップデートされた pyenv (v1.2.27) で shims にパスが通らなくなってしまった。
暫定対策
Issue にあるように、anyenv init
の後で shims にパスを通す。
(anyenv init で PATH が上書きされるため、init の後に書く)
ただし、anyenv init 時点でパスが通ってないため、ターミナル起動時の WARNING は消えない。
~/.zshrc
eval "$(anyenv init -)"
export PATH=$PYENV_ROOT/shims:$PATH
WARNINGが気になる場合は、1.2.26 時点の pyenv を /Users/username/.anyenv/envs/
に展開すればよい。