1001001

73。CTFのWrite-upや技術的な備忘録を書きとめたいです。

【Mac/Python】homebrewでscipyをインストール時に起きたパーミッションエラー

スクリーンショットなどを取り忘れたので取り急ぎのメモとなります.

環境

現象

上記のhomebrewでscipyをインストールしたところ,下記のようなエラーが発生.
(もっと長い文面でしたがここだけしか残していませんでした)

Error: Permission denied @ dir_s_mkdir - /usr/local/Frameworks

原因

見たままですが,/usr/local/Frameworksに書き込み権限が無い模様.
scipyに限らずbrewでこのディレクトリを使う場合に発生する.
(homebrewは基本的にsudoを付けると怒られるので他の対処をする必要がある)

対処

必要なディレクトリの所有者をchownで変更しておくことで対処可能.
ディレクトリが存在しない場合は事前にmkdirで作っておく.
私の場合は/usr/local/Frameworks/usr/local/Frameworks/Python.frameworkを作成した.

$ sudo mkdir /usr/local/Frameworks
$ sudo mkdir /usr/local/Frameworks/Python.framework
$ sudo chown -R $(whoami) $(brew --prefix)/*

権限を変更後,再びbrew installを実行すれば正しくインストールされます.
(他のユーザで使う時にこの対処で大丈夫なのかしら...)

余談

brewで入れたscipyがpyenv環境で使えない時の対処に関しては以下です.
73spica.hatenablog.com