MacOSのpyenvでpyexpatのエラーが出る対処

スポンサーリンク
プログラミング

MacOSのpyenvでpyexpatのエラーが出る対処

スポンサーリンク

No module named ‘pyexpat’のエラーを吐く

$ pyenv install 3.7.5
python-build: use [email protected] from homebrew
python-build: use readline from homebrew
Downloading Python-3.7.5.tar.xz...
-> https://www.python.org/ftp/python/3.7.5/Python-3.7.5.tar.xz
Installing Python-3.7.5...
python-build: use readline from homebrew
python-build: use zlib from xcode sdk

BUILD FAILED (OS X 10.15.1 using python-build 20180424)

Inspect or clean up the working tree at /var/folders/ns/nrd9p6nx01xd_5mvplbrkkzw0000gn/T/python-build.20191129122212.45086
Results logged to /var/folders/ns/nrd9p6nx01xd_5mvplbrkkzw0000gn/T/python-build.20191129122212.45086.log

Last 10 log lines:
  File "/var/folders/ns/nrd9p6nx01xd_5mvplbrkkzw0000gn/T/tmp0rbu678z/pip-19.2.3-py2.py3-none-any.whl/pip/_internal/cli/cmdoptions.py", line 24, in <module>
  File "/var/folders/ns/nrd9p6nx01xd_5mvplbrkkzw0000gn/T/tmp0rbu678z/pip-19.2.3-py2.py3-none-any.whl/pip/_internal/models/search_scope.py", line 11, in <module>
  File "/var/folders/ns/nrd9p6nx01xd_5mvplbrkkzw0000gn/T/tmp0rbu678z/pip-19.2.3-py2.py3-none-any.whl/pip/_internal/utils/misc.py", line 21, in <module>
  File "/var/folders/ns/nrd9p6nx01xd_5mvplbrkkzw0000gn/T/tmp0rbu678z/pip-19.2.3-py2.py3-none-any.whl/pip/_vendor/pkg_resources/__init__.py", line 35, in <module>
  File "/private/var/folders/ns/nrd9p6nx01xd_5mvplbrkkzw0000gn/T/python-build.20191129122212.45086/Python-3.7.5/Lib/plistlib.py", line 65, in <module>
    from xml.parsers.expat import ParserCreate
  File "/private/var/folders/ns/nrd9p6nx01xd_5mvplbrkkzw0000gn/T/python-build.20191129122212.45086/Python-3.7.5/Lib/xml/parsers/expat.py", line 4, in <module>
    from pyexpat import *
ModuleNotFoundError: No module named 'pyexpat'
make: *** [install] Error 1

環境

$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.15.1
BuildVersion:   19B88

この辺をやってもだめだった

pyexpat が原因で pyenv install が出来ない解決方法 - Qiita
#`pyenv install 3.7.3`したら下の様なエラーが発生した # 現状 **MacOS Mojave10.14.5**を使って**pyenv 1.2.12**経由で`pyenv install 3.7.3`したらpye...

解決方法

SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk  MACOSX_DEPLOYMENT_TARGET=10.15 pyenv install 3.6.9

SDKROOTを指定してあげることでインストールができる

zshrcなりに登録しておく

eval "$(pyenv init -)"
export PYENV_ROOT="$HOME/.pyenv"
export PATH=$$PYENV_ROOT/bin:$PATH
export PATH=$$PYENV_ROOT/shims:$PATH
alias pyenv="SDKROOT=$(xcrun --show-sdk-path) pyenv"

コメント

タイトルとURLをコピーしました