Big SurでのBUILD FAILED (OS X 11.5.1 using python-build 20180424)を解決したい
macOS Big Sur (Version 11.5.1)にてpyenvで3.7系のpythonをインストールしようとすると
BUILD FAILED (OS X 11.5.1 using python-build 20180424)
のエラーが発生した。
結論から言うと、brewを経由せずにgithubから直接pyenvを取ってきたら解決した。
既にgithubリポジトリから直接インストールしている人は
cd $(pyenv root) git pull
で最新版のpyenvを取ってくれば良い。
ただ、これだけでは3.6.8が結局入らず、今度は
BUILD FAILED (OS X 11.5.1 using python-build 2.0.6)
のエラーが発生。
pyenvのissueに解決策があったので、コマンドを以下にまとめておいた。
3.6.8のインストール
CFLAGS="-I$(brew --prefix openssl)/include -I$(brew --prefix bzip2)/include -I$(brew --prefix readline)/include -I$(xcrun --show-sdk-path)/usr/include" LDFLAGS="-L$(brew --prefix openssl)/lib -L$(brew --prefix readline)/lib -L$(brew --prefix zlib)/lib -L$(brew --prefix bzip2)/lib" pyenv install --patch 3.6.8 < <(curl -sSL https://github.com/python/cpython/commit/8ea6353.patch\?full_index\=1)
3.6.12のインストール
CFLAGS="-I$(brew --prefix openssl)/include -I$(brew --prefix bzip2)/include -I$(brew --prefix readline)/include -I$(xcrun --show-sdk-path)/usr/include" LDFLAGS="-L$(brew --prefix openssl)/lib -L$(brew --prefix readline)/lib -L$(brew --prefix zlib)/lib -L$(brew --prefix bzip2)/lib" pyenv install --patch 3.6.12 < <(curl -sSL https://github.com/python/cpython/commit/8ea6353.patch\?full_index\=1)
3.7.9のインストール
CFLAGS="-I$(brew --prefix openssl)/include -I$(brew --prefix bzip2)/include -I$(brew --prefix readline)/include -I$(xcrun --show-sdk-path)/usr/include" LDFLAGS="-L$(brew --prefix openssl)/lib -L$(brew --prefix readline)/lib -L$(brew --prefix zlib)/lib -L$(brew --prefix bzip2)/lib" pyenv install 3.7.9
3.8.0のインストール
pyenv install --patch 3.8.0 < (curl -sSL https://github.com/python/cpython/commit/8ea6353.patch\?full_index\=1 | psub)
3.8.6のインストール
LDFLAGS="-L$(xcrun --show-sdk-path)/usr/lib" pyenv install 3.8.6
とりあえずこれで動いているものの、気持ちが悪い。