I feel stupid about this, but I just did a fresh install of 1.8.5 from
MacPorts, installed a fresh rubygems, installed all my gems, and simple
code like this fails:
require ‘redcloth’
Error message:
lacosta:~/nitro/tracker sxross$ ruby bug.rb
bug.rb:1:in `require’: no such file to load – redcloth (LoadError)
The odd thing is that any requires inside a Rails app seem to find the
gems just fine. I assume that’s because Rails munges the load paths.
The odd thing is that any requires inside a Rails app seem to find the
gems just fine. I assume that’s because Rails munges the load paths.
Actually it’s because of config/boot.rb in your Rails app. Specifically:
require ‘rubygems’
If your code was working before, and didn’t need this, then it’s
possible that you had had RUBYOPT set.
The odd thing is that any requires inside a Rails app seem to find the
gems just fine. I assume that’s because Rails munges the load paths.
Actually it’s because of config/boot.rb in your Rails app. Specifically:
require ‘rubygems’
If your code was working before, and didn’t need this, then it’s
possible that you had had RUBYOPT set.
Devin
You’re right, it’s the explicit:
require ‘rubygems’
Shouldn’t this be implicit? Or am I misremembering…
The odd thing is that any requires inside a Rails app seem to find the
gems just fine. I assume that’s because Rails munges the load paths.
Actually it’s because of config/boot.rb in your Rails app. Specifically:
require ‘rubygems’
If your code was working before, and didn’t need this, then it’s
possible that you had had RUBYOPT set.
Devin
You’re right, it’s the explicit:
require ‘rubygems’
Shouldn’t this be implicit? Or am I misremembering…
Thanks
It’s not a standard part of Ruby, it’s an external library, so it should
remain explicit. If you’re using it on your system you most likely do
want to set RUBYOPT="-r rubygems".