MAC El Capitan : Python


20160402_python

TensorFlow を入れようとしてハマった。
pip パッケージのアップグレードでエラーになる

$ sudo pip install --upgrade setuptools
/tmp/pip-KGqcL5-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/_markerlib/__init__.py'

root権限なのに、なぜに permit エラーに???
どうやら El Capitan から入ったセキュリティー機能 System Integrity Protection のせいらしい。
対策は、セキュリティーを外す方法もあるが、Python を Homebrew で入れ直すのが良いようだ。

(既存のファイルを削除する)
$ sudo rm -f -R /Library/Python/2.7/site-packages/*
$ sudo rm -f -R /usr/local/bin/pip*

(Pythonをインストールする)
$ brew install python
$ brew linkapps python

(pipを更新する)
$ pip install --upgrade pip
$ pip install --upgrade setuptools

MACを再起動して

(現在のバージョン)
$ python -V
Python 2.7.11
$ which python
/usr/local/bin/python

(既存のバージョン)
$ /usr/bin/python -V
Python 2.7.10

参考
How to use pip after the El Capitan Max OS X upgrade?
Mac OS X El CapitanにTensorFlowをpipで入れるときの落とし穴
OS X 10.11 El CapitanのSystem Integrity Protection(SIP)についてちょっと詳しく


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です