はじめに
ちょっと新しい環境を手に入れたのでPython3.5.1を入れようと思ってドブにハマって解決できたのでシェア
環境
- Mac OS X 10.10.5
- PyEnv
セットアップ
$ git clone https://github.com/yyuu/pyenv.git ~/.pyenv $ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc $ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc $ echo 'eval "$(pyenv init -)"' >> ~/.bashrc $ exec $SHELL
問題発生
ここでpyenv install <バージョン>
でインストールするのですが,問題発生!
$ pyenv install 3.5.1 Downloading readline-6.3.tar.gz... -> https://yyuu.github.io/pythons/56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43 Installing readline-6.3... Installed readline-6.3 to /Users/nnsnodnb/.pyenv/versions/3.5.1 Downloading Python-3.5.1.tgz... -> https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz Installing Python-3.5.1... BUILD FAILED (OS X 10.10.5 using python-build 20151222-8-g5c5205e) Inspect or clean up the working tree at /var/folders/ym/w77_0x8n6kx0bbnbz1s4sp_00000gs/T/python-build.20160125040015.59169 Results logged to /var/folders/ym/w77_0x8n6kx0bbnbz1s4sp_00000gs/T/python-build.20160125040015.59169.log Last 10 log lines: File "/private/var/folders/ym/w77_0x8n6kx0bbnbz1s4sp_00000gs/T/python-build.20160125040015.59169/Python-3.5.1/Lib/ensurepip/__main__.py", line 4, in <module> ensurepip._main() File "/private/var/folders/ym/w77_0x8n6kx0bbnbz1s4sp_00000gs/T/python-build.20160125040015.59169/Python-3.5.1/Lib/ensurepip/__init__.py", line 209, in _main default_pip=args.default_pip, File "/private/var/folders/ym/w77_0x8n6kx0bbnbz1s4sp_00000gs/T/python-build.20160125040015.59169/Python-3.5.1/Lib/ensurepip/__init__.py", line 116, in bootstrap _run_pip(args + [p[0] for p in _PROJECTS], additional_paths) File "/private/var/folders/ym/w77_0x8n6kx0bbnbz1s4sp_00000gs/T/python-build.20160125040015.59169/Python-3.5.1/Lib/ensurepip/__init__.py", line 40, in _run_pip import pip zipimport.ZipImportError: can't decompress data; zlib not available make: *** [install] Error 1
みたいな感じでエラーがでる
解決方法
zipimport.ZipImportError: can't decompress data; zlib not available
このエラーメッセージでググったらIssue出てきた
Python 3.5 Issue #454 | GitHub
こんな感じなことが書いてあった。Xcode command line tools
を入れろということらしい
$ xcode-select --install
入れて差し上げる
確認
$ pyenv install 3.5.x # xはお好みで
インストールが終わったらpyenv rehash && pyenv global 3.5.x
とかやる。
それでpyenv versions
やpython -V
とかで確認して無事インストールができていることを確認
最後に
GitHubのIssueを見る限りどうやらPython3.5.x系のときに出ているらしいですね。 command line tools自体は入れておいて損はないと思うから別にいんですけどねw
Qiitaからの引用