MacbookのターミナルからPythonをインストールする際、何度かエラーが出てしまった。
その際に取った解決策をここに記す。
#動作環境
MacBook Air (macOS Mojave 10.14.4)
#Pythonインストール手順
1.Xcodeのインストール
2.Homebrewのインストール
3.Homebrewでpyenvのインストール
4.pyenvでPythonのインストール
#本題
##2.Homebrewのインストール にて
Homebrew公式サイトより、
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
以上のコードを実行し、Homebrewをインストールした。
###エラー
brew updating...
上の状態から動かない。すでにインストールされているみたいなのだが...
###解決策
アンインストールしてもう一度インストール
以下のコードでアンインストール。
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
そして、もう一度、インストールしよう。
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
###エラー
また途中で止まってしまった。
###解決策
問題箇所をチェックしてくれるbrew doctor
コマンドを使ってみた。
$ brew doctor
すると、、、
==> Tapping homebrew/core
Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core'...
remote: Enumerating objects: 4986, done.
remote: Counting objects: 100% (4986/4986), done.
remote: Compressing objects: 100% (4778/4778), done.
remote: Total 4986 (delta 52), reused 822 (delta 17), pack-reused 0
Receiving objects: 100% (4986/4986), 4.00 MiB | 234.00 KiB/s, done.
Resolving deltas: 100% (52/52), done.
Checking out files: 100% (5003/5003), done.
Tapped 2 commands and 4771 formulae (5,028 files, 12.4MB).
Your system is ready to brew.
できたみたい。
試しに、brew -v
コマンドで、バージョン確認してみる。
$ brew -v
Homebrew 2.1.3
Homebrew/homebrew-core (git revision 034e; last commit 2019-05-20)
無事、インストールできていた。
##4.pyenvでPythonのインストール にて
今回はPython 3.6.5をインストール。以下のコマンドを実行。
$ pyenv install 3.6.5
###エラー
python-build: use openssl from homebrew
python-build: use readline from homebrew
Downloading Python-3.6.5.tar.xz...
-> https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz
Installing Python-3.6.5...
python-build: use readline from homebrew
BUILD FAILED (OS X 10.14.4 using python-build 20180424)
Inspect or clean up the working tree at /var/folders/y8/cn2cvksx0m98bcj0llww28pr0000gn/T/python-build.20190521011235.40941
Results logged to /var/folders/y8/cn2cvksx0m98bcj0llww28pr0000gn/T/python-build.20190521011235.40941.log
Last 10 log lines:
File "/private/var/folders/y8/cn2cvksx0m98bcj0llww28pr0000gn/T/python-build.20190521011235.40941/Python-3.6.5/Lib/ensurepip/__main__.py", line 5, in <module>
sys.exit(ensurepip._main())
File "/private/var/folders/y8/cn2cvksx0m98bcj0llww28pr0000gn/T/python-build.20190521011235.40941/Python-3.6.5/Lib/ensurepip/__init__.py", line 204, in _main
default_pip=args.default_pip,
File "/private/var/folders/y8/cn2cvksx0m98bcj0llww28pr0000gn/T/python-build.20190521011235.40941/Python-3.6.5/Lib/ensurepip/__init__.py", line 117, in _bootstrap
return _run_pip(args + [p[0] for p in _PROJECTS], additional_paths)
File "/private/var/folders/y8/cn2cvksx0m98bcj0llww28pr0000gn/T/python-build.20190521011235.40941/Python-3.6.5/Lib/ensurepip/__init__.py", line 27, in _run_pip
import pip
zipimport.ZipImportError: can't decompress data; zlib not available
make: *** [install] Error 1
zlib not available
どうやら、zlibというものが利用できないらしい。
###解決策
zlibを用いてインストール
まず、以下のコードで、zlibを入れるのに必要なファイルを入れる。
$ sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /
Password:
installer: Package name is macOS_SDK_headers_for_macOS_10.14
installer: Installing at base path /
installer: The install was successful.
途中パスワードを要求されるがインストールできた。
次に、以下のコードで、zlibを使ってPythonをインストール。
$ env CPPFLAGS="-I/usr/local/opt/zlib/include" LDFLAGS="-L/usr/local/opt/zlib/lib" pyenv install 3.6.5
python-build: use openssl from homebrew
python-build: use readline from homebrew
Downloading Python-3.6.5.tar.xz...
-> https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz
Installing Python-3.6.5...
python-build: use readline from homebrew
Installed Python-3.6.5 to /Users/Keiichi/.pyenv/versions/3.6.5
できたみたい。
バージョンを確認してみると、
$ python --version
Python 3.6.5
完了。