Ruby & macOSで色々なものがどこにインストールされているか調べてみました
環境
- macOS Sierra
- Homebrew 1.3.2
- rbenv 1.1.1
- pyenv 1.1.3
- postgres (PostgreSQL) 9.6.3
macOS自体のフォルダ構成概要
/bin
/sbin
/usr
/Applications
/Users/user_name/Applications
~ #=> /Users/user_name
フォルダの場所
Ruby
rbenv経由でインストールしたRuby
/usr/local/Cellar/rbenv/1.1.1 #rbenv本体
/Users/user_name/.rbenv/versions #Ruby
SystemのRuby
/System/Library/Frameworks/Ruby.framework/Versions
Gem
rbenv経由でインストールしたRubyのGem
/usr/local/Cellar/rbenv/1.1.0/versions/2.3.3/lib/ruby/gems/2.3.0/gems
SystemのRubyのGem
/Library/Ruby/Gems/2.0.0/gems
PostgreSQL
/usr/local/Cellar/postgresql/9.6.3 # PostgreSQL本体
/usr/local/var/postgres/base # DBファイルの場所
Python
pyenv経由でインストールしたPython
/usr/local/Cellar/pyenv/1.1.3 #pyenv本体
/Users/user_name/.pyenv/versions #Python
SystemのPython
/System/Library/Frameworks/Python.framework/Versions
今後調べること
Rubyがインストールされている場所
rbenv経由でインストールしたRubyがなぜ/usr/local/Cellar/rbenv/1.1.0/versions
にインストールされるのか。/Users/user_name/.rbenv/versions
にインストールされるというページもある。
追記: RBENV_ROOT
が/usr/local/opt/rbenv
に設定されているため。しかし設定した覚えがなく、どこで設定したのか調査中。基本的にはデフォルトの/Users/user_name/.rbenv/versions
にインストールした方がいいようだ(rbenv rehashは何をやっているのか?参照)。
追記2: oh-my-zshのpluginファイル/Users/user_name/.oh-my-zsh/plugins/rbenv/rbenv.plugin.zsh
の設定によるもののようだ。
このPRがマージされれば直るらしい(関連: Issue #3093, PR #3808, PR #4384, Issue #4998, PR #6168)。
追記3: 上記のプラグインファイルをPRの通り編集してもうまくいかないので、oh-my-zshのプラグインのうちrbenvのものを使わないようにして、Rubyをインストールし直したところ、推奨通りの動きとなった。
参考
Rubyが参照してるgemのパスやインストール済gemを確認する方法
Rails開発環境の構築(複数バージョン共存可能)(Homebrew編)
rbenv + ruby-build はどうやって動いているのか
postgreSQLの構築
rbenvおよびbundlerの基本的な使用方法
rbenv rehashは何をやっているのか?
Mac に Python 3.x 系と 2.x を共存するベストな方法
oh-my-zsh を使って zsh の便利な設定をまとめて取り入れる
(参考)Ubuntuフォルダ構成(作成中)
/usr
/bin