require is not the same in irb as in ruby?

G

Gregory Marton

$ irb
irb(main):001:0> require 'rubygems'
=> true
irb(main):002:0> require 'builder'
=> true
irb(main):003:0> ^D

All well and good. Now:

$ cat > foo.rb
#!/usr/bin/ruby
require 'rubygems'
require 'builder'
^D
$ chmod +x foo.rb
$ foo.rb
/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:21:in
`require__': no such file to load -- builder (LoadError)
from
/usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:21:in `require'
from ./foo.rb:3


What's going on here? I only experience this with builder. Other
modules seem fine. Incidentally, there's a builder.rb at
/usr/local/lib/site_ruby/1.8/rubygems/builder.rb
right next to the custom_require.rb that fails to find it.

Thanks for any insights!
Grem
 
G

Gregory Marton

Interesting...

I guessed that maybe the fact that I was using /usr/bin/ruby and there
was a separate /usr/local/bin/ruby might be a problem. They are the
same version
ruby 1.8.6 (2007-03-13 patchlevel 0) [i686-linux]

and in fact, one turns out to be a symlink to the other(!) but using
/usr/bin/ruby in the shebang fails, while using /usr/local/bin/ruby in
the shebang succeeds.

Any ideas?

Thanks,
Grem
 
T

Tim Hunter

Gregory said:
Interesting...

I guessed that maybe the fact that I was using /usr/bin/ruby and there
was a separate /usr/local/bin/ruby might be a problem. They are the
same version
ruby 1.8.6 (2007-03-13 patchlevel 0) [i686-linux]

and in fact, one turns out to be a symlink to the other(!) but using
/usr/bin/ruby in the shebang fails, while using /usr/local/bin/ruby in
the shebang succeeds.

Any ideas?

Thanks,
Grem

Print the value of $: to determine the directories in which Ruby will
look for libraries. Those directories are largely determined by the
directory in which Ruby is installed at the time Ruby is installed. If
Ruby is actually installed in /usr/local then it won't search for
libraries in /usr.

Good luck!
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,012
Latest member
RoxanneDzm

Latest Threads

Top