pyenvでPythonのバージョンを切り替えられない場合【MacOS Mojave】
今回、pyenvでpythonのバージョンを切り替えられない理由は、
MacOS Mojaveにありました!
$ pyenv global 3.6.5
とすると、
pyenv: version `3.6.5' not installed
と出てしまう。
そこで
$ pyenv install 3.6.5
としたものの、
pyenv: version `install' not installed
とまたまたエラー。
$ pyenv install --list
ここにはきちんと一覧に載っているのだが、、、
xcode-selectの最新バージョン(2354)にMojave用のmacOS SDK headerがデフォルトで入っていないのが原因のようなので、
$ sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /
これを実行して、再び!
$ pyenv install 3.6.5
OK!
High Sierra以前ではこれは基本的にxcode-select --install で直せたが、Mojaveではそう上手く行かないよう。
そして最後に
$ pyenv global 3.6.5
$ python --version
Python 3.6.5
できました!