pyenv installで「zipimport.ZipImportError」が発生したときにやったこと(masOS Mojave)
サーバーレス開発部の藤井です。
pyenv install
でzipimport.ZipImportError
というエラーが出たので、やったことをまとめました。
$ pyenv install 3.6.8 (略) zipimport.ZipImportError: can't decompress data; zlib not available
環境
項目 | バージョン |
---|---|
macOS | Mojave 10.14.5 |
やってみた
1. 現状確認
下記を参考にしましたが、/Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
が存在しませんでした。
$ sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target / installer: Error - the package path specified was invalid: '/Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg'.
念のため確認します。
$ ls/Library/Developer/CommandLineTools/ usr
無かった。悲しい。
2. Xcodeのコマンドライン・ディベロッパ・ツールを入れる
Xcodeのコマンドライン・ディベロッパ・ツールが入っていないのでは? と思いましたが、入ってるように見えます。(違うやつ?)
$ xcodebuild -version Xcode 10.2.1 Build version 10E1001
が、xcode-select --install
を実行すると、「入ってないから入れてね」と言われました。
$ xcode-select --install xcode-select: note: install requested for command line developer tools
素直にインストールします。
導入後に確認してみると、macOS_SDK_headers_for_macOS_10.14.pkg
がありました!
$ ls /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
3. 再チャレンジ
冒頭のコマンドを実行し、うまくできました!
$ sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target / installer: Package name is macOS_SDK_headers_for_macOS_10.14 installer: Installing at base path / installer: The install was successful.
続いて、pyenv install
に再チャレンジです!
$ pyenv install 3.6.8 python-build: use openssl from homebrew python-build: use readline from homebrew Installing Python-3.6.8... python-build: use readline from homebrew Installed Python-3.6.8 to /Users/fujii.genki/.pyenv/versions/3.6.8
うまくできました!!!
さいごに
Mojaveにしたのは最近なので、今更ですがハマりました……。