むにえる牧場

毎日むにえるをつくっています

pyenvでpython3.7.x installするときにError

UdemyでpythonDjangoフレームワークを利用してwebアプリ作ってみようという講座を買いました。
せっかくなので、pyenvで最新のpython3.7.0を入れようとしましたが、エラーが出て詰まったので備忘録メモ。

pyenv install 3.7.0

エラーログは以下の通り

~ $ pyenv install 3.7.0
python-build: use openssl from homebrew
python-build: use readline from homebrew
Downloading Python-3.7.0.tar.xz...
-> https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
Installing Python-3.7.0...
python-build: use readline from homebrew

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

Inspect or clean up the working tree at /var/folders/nw/2kvdy09x6557cg3x_zjcwk0r0000gn/T/python-build.20180916195612.34125
Results logged to /var/folders/nw/2kvdy09x6557cg3x_zjcwk0r0000gn/T/python-build.20180916195612.34125.log

Last 10 log lines:
  File "/private/var/folders/nw/2kvdy09x6557cg3x_zjcwk0r0000gn/T/python-build.20180916195612.34125/Python-3.7.0/Lib/ensurepip/__main__.py", line 5, in <module>
    sys.exit(ensurepip._main())
  File "/private/var/folders/nw/2kvdy09x6557cg3x_zjcwk0r0000gn/T/python-build.20180916195612.34125/Python-3.7.0/Lib/ensurepip/__init__.py", line 204, in _main
    default_pip=args.default_pip,
  File "/private/var/folders/nw/2kvdy09x6557cg3x_zjcwk0r0000gn/T/python-build.20180916195612.34125/Python-3.7.0/Lib/ensurepip/__init__.py", line 117, in _bootstrap
    return _run_pip(args + [p[0] for p in _PROJECTS], additional_paths)
  File "/private/var/folders/nw/2kvdy09x6557cg3x_zjcwk0r0000gn/T/python-build.20180916195612.34125/Python-3.7.0/Lib/ensurepip/__init__.py", line 27, in _run_pip
    import pip._internal
zipimport.ZipImportError: can't decompress data; zlib not available
make: *** [install] Error 1

いろいろと調べて結果、xcode-selectを入れ直すと良いそうな

~ $ xcode-select --install
xcode-select: note: install requested for command line developer tools

これで、無事python3.7.xが入れられるようになりました。

~ $ pyenv install 3.7.0
python-build: use openssl from homebrew
python-build: use readline from homebrew
Downloading Python-3.7.0.tar.xz...
-> https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
Installing Python-3.7.0...
python-build: use readline from homebrew
Installed Python-3.7.0 to /Users/jalemy/.pyenv/versions/3.7.0

最後に、 pyenv global 3.7.0 とコマンドを打って、3.7.0を使うように設定しておしまい。

~ $ pyenv global 3.7.0
~ $ pyenv versions
  system
  3.5.1
* 3.7.0 (set by /Users/jalemy/.pyenv/version)

versionsで3.7.0がsetされていることも確認できました。
Udemyの教材を少しずつ進めていこうと思います。