homebrew/pip3メモ2017

Share on:

学科(今年から知能情報コースか)のインストール大会で用意してもらってるinstall_homebrew.shがあるのですが、スクリプト眺めると冒頭で /opt/homebrew 作ってます。が、そっちにはインストールして無くて空のまま(多分消し忘れ)。去年の残骸と思われるコメントアウトされてる方では /opt/homebrew を指定してるのだけど、2017年度はデフォルトにしたらしい。デフォルトは/usr/local/binなのね。/opt/homebrew以下にインストールされなくて暫く悩んでました。

で、/usr/local 以下にあれこれインストールされまくるわけですが、過去の財産残った状態だと色んな所で問題起きまくり。一番多いのはパーミッションで、次点で古いアーキテクチャでコンパイルされてるライブラリか。後者はさっくり消したほうが早そうだけど、一先ず直接邪魔にならないなら放置しとこう(ぉぃ)。パーミッション問題の方は、単純に消すorパーミッション変更するだけでは駄目なケースがあって。あれこれ試した結果、/usr/local以下のowner設定するとうまくいってるように見えます。/usr/local 以下の ower を tnal:admin するのは老害的に微妙に気持ち悪くなるのですが、気持ちだけの問題とも言える。

ということで homebrew 周りはどうにかなりそうです。


もう一つの壁は、brew で入れた python3/pip3 の方。brew install 時にリンクでエラーになってた問題は ower変更で改善したのだけど、pip3の動作がまだ怪しい。具体的には、依存関係のあるモジュールを自動で入れてくれず、エラーになっちゃう。エラー見る限りではまだインストールされていないモジュールをimportしようとして失敗してるようにみえるのだけど、なぜインストール前にimportしようとしてるのかが謎。個別に関連モジュールをインストールすると、問題ないのだよな。

ということで、先に依存モジュールをインストールするとその先もインストールできるのだけど、これは何が悪いのだろう。ちょっとググる限りではそれらしい関連情報も見つからないのだよな。

ということで、一応場当たり的には使えてるけどちょっと面倒だな、という状態です。うーむ。

pyenv使うとまた別の問題が起きそうで試してないけど、逆にそっち使ったほうが良かったりするのかしら。