Ruby gemsのデフォルトの検索パスは何ですか?gem
の--install-dir
スイッチに渡すことができるディレクトリを見つけようとしているので、そうしません宝石を見つけるには、環境変数GEM_HOME
を設定する必要があります。
特に、gemをインストールした場合 jekyll via
$ gem install --bindir /usr/local/bin --install-dir /usr/local/lib/Ruby/gems/1.8 jekyll
その場合、/usr/local/bin/jekyll
はGEM_HOME
を明示的に設定しないとライブラリを見つけることができません:
$ jekyll --help
/usr/lib/Ruby/1.8/rubygems.rb:779:in `report_activate_error': Could not find RubyGem jekyll (>= 0) (Gem::LoadError)
from /usr/lib/Ruby/1.8/rubygems.rb:214:in `activate'
from /usr/lib/Ruby/1.8/rubygems.rb:1082:in `gem'
from /usr/local/bin/jekyll:18
$ GEM_HOME=/usr/local/lib/Ruby/gems/1.8 jekyll --help
Jekyll is a blog-aware, static site generator.
[ ... ]
Ruby自体は、Ruby変数$LOAD_PATH
にリストされているディレクトリを検索します。これは、環境変数RUBYLIB
。しかし、rubygemシステムはどこで宝石を検索しますか?
タイプgem env
。それはあなたが知りたいことを教えてくれます。