読者です 読者をやめる 読者になる 読者になる

dackdive's blog

新米webエンジニアによる技術ブログ。JavaScript(React), Salesforce, Python など

follow us in feedly

Mac OS X 10.9 Mavericksでpyenv installが失敗する時

Python 開発環境構築

Mac OS X 10.9固有なのかわかりませんが
pyenv installした時に次のようなメッセージが出て
BUILD FAILEDとなってしまう時の対策。

$ pyenv install 3.3.1
Installing Python-3.3.1...
patching file ./Modules/readline.c
Hunk #1 succeeded at 225 (offset -6 lines).
Hunk #2 succeeded at 759 (offset -14 lines).
Hunk #3 succeeded at 812 (offset -14 lines).
Hunk #4 succeeded at 870 (offset -14 lines).
Hunk #5 succeeded at 918 with fuzz 2 (offset -25 lines).
ERROR: The Python ssl extension was not compiled. Missing the OpenSSL lib?

Please consult to the Wiki page to fix the problem.
https://github.com/yyuu/pyenv/wiki/Common-build-problems


BUILD FAILED

Inspect or clean up the working tree at /var/folders/w2/mn18p8ls24s_g932rf4dljtw0000gn/T/python-build.20140816205543.30851
Results logged to /var/folders/w2/mn18p8ls24s_g932rf4dljtw0000gn/T/python-build.20140816205543.30851.log

Last 10 log lines:
rm -f /Users/[username]/.pyenv/versions/3.3.1/bin/idle3
(cd /Users/[usename]/.pyenv/versions/3.3.1/bin; ln -s idle3.3 idle3)
rm -f /Users/[username]/.pyenv/versions/3.3.1/bin/pydoc3
(cd /Users/[username]/.pyenv/versions/3.3.1/bin; ln -s pydoc3.3 pydoc3)
rm -f /Users/[username]/.pyenv/versions/3.3.1/bin/2to3
(cd /Users/[username]/.pyenv/versions/3.3.1/bin; ln -s 2to3-3.3 2to3)
rm -f /Users/[username]/.pyenv/versions/3.3.1/bin/pyvenv
(cd /Users/[username]/.pyenv/versions/3.3.1/bin; ln -s pyvenv-3.3 pyvenv)
rm -f /Users/[username]/.pyenv/versions/3.3.1/share/man/man1/python3.1
(cd /Users/[username]/.pyenv/versions/3.3.1/share/man/man1; ln -s python3.3.1 python3.1)

対策

何かいろんなこと調べて試してたんですが
最終的に、こちらに書いてある方法を実施したらうまくいくようになりました。

Mac OSX 10.9(Mavericks)で最新のPythonとRubyとPerlが手軽に使える環境を構築する(pyenv+virturlenv,rbenv+gemset,plenv+pmset) - blog@sotm.jp

具体的には、以下にコマンドを実施することで
XcodeのCommand Line Toolsをインストールする、というだけ。

$ xcode-select --install

その他に試したこと

参考記事: クリーンインストールしてないMavericks環境でのpyenv install - ウラガミ・ライフ

やったこと:以下のコマンド

CFLAGS="-I$(xcrun --show-sdk-path)/usr/include"

たぶん必要ないかな...