brew upgradeしたらpyenvのpythonが起動しなくなった

2020/09/24に公開

brew upgrade したら python が起動しなくなったので対処した。

エラー内容

具体的には下記のようなエラーになる。

iMac:~ paraches$ python
/usr/local/var/pyenv/shims/python: line 21: /usr/local/Cellar/pyenv/1.2.19/libexec/pyenv: No such file or directory
iMac:~ paraches$ 

原因

brew upgrade のログを見てみると pyenv も新しくなっていた。

==> Upgrading pyenv 1.2.19 -> 1.2.20 
==> Downloading https://homebrew.bintray.com/bottles/pyenv-1.2.20.catalina.bottl

pyenv が新しくなった結果、エラーメッセージにある /usr/local/Cellar/pyenv/1.2.19 が /usr/local/Cellar/pyenv/1.2.20 になったので見つからずに起動できなくなっている。

解決方法

これは pyenv rehash してアップデートを反映させれば解決する。

iMac:~ paraches$ pyenv rehash
iMac:~ paraches$ python -V
Python 3.7.4
iMac:~ paraches$ 

python 起動しました。

教訓

実はこのエラーに遭遇するのはこれが初めてではない。
Homebrew で何か新しくインストールする際に brew update して、よく確認せずについでに brew upgrade してしまうのがいけない。

今回は Zenn のために nodebrew をインストールした際にやってしまった…

Discussion