Hello,
I just did a complete re-install of ruby 1.8.5-p12 and rubygems-0.9.0
and I’m getting the
old sawhorse error:
ruby: no such file to load – ubygems (LoadError)
I’ve searched the newsgroup, but nothing seems to address the problem
I’m having (I
think). Here’s what I did:
- rm -fr’d my “ruby” and “rubygems” installation directories in my
$HOME/local (I do not
have root access to the computer in question). Also unset RUBYOPT.
ruby install
- Installed ruby 1.8.5-p12. No problems
- Modified my login script with:
export PATH=$PATH:${HOME}/local/ruby/bin
ruby and irb run fine.
rubygems install
- Specified where I want gems to actually go,
export GEM_HOME=${HOME}/local/rubygemrepository
- ruby setup.rb config --prefix=${HOME}/local/rubygems
- ruby setup.rb setup
- ruby setup.rb install
…
Successfully built RubyGem
Name: sources
Version: 0.0.1
File: sources-0.0.1.gem
- In login script added
export GEM_HOME=${HOME}/local/rubygemrepository
export PATH=$PATH:${HOME}/local/rubygems/bin
and
export RUBYOPT=“rubygems”
Now I want to install a gem (Bil K.'s funit) and I did:
gem install funit
and got the error:
ruby: no such file to load -- ubygems (LoadError)
And, of course, ruby and irb no longer work either (same error).
O.k., so what did I do wrong? After I installed rubygems I set the
RUBYOPT envar. But,
ruby can’t seem to find anything rubygem related.
Is there some other magical envar that I need to set so that ruby and
rubygems play nice?
Or should I install rubygem “inside” my ruby install? In:
${HOME}/local/ruby/lib/ruby/site_ruby/1.8/i686-linux ?
or
${HOME}/local/ruby/lib/ruby/site_ruby
or
??
I followed the notes I made last time I did this[*] and it worked then,
so I’ve screwed
something up somewhere; I just don’t know what.
Any help/info appreciated.
cheers,
paulv
[*] Said notes being a little sketchy, hence my starting from scratch
effort.
On Dec 28, 2006, at 16:30, Paul van Delst wrote:
question). Also unset RUBYOPT.
3) Specified where I want gems to actually go,
export GEM_HOME=${HOME}/local/rubygemrepository
4) ruby setup.rb config --prefix=${HOME}/local/rubygems
This tells ruby to put ubygems.rb under ~/local/rubygems.
- ruby setup.rb setup
- ruby setup.rb install
…
Successfully built RubyGem
Name: sources
Version: 0.0.1
File: sources-0.0.1.gem
This puts ubygems.rb under ~/local/rubygems.
and got the error:
ruby: no such file to load – ubygems (LoadError)
And, of course, ruby and irb no longer work either (same error).
ubygems.rb is not in your $LOAD_PATH for ruby.
O.k., so what did I do wrong? After I installed rubygems I set
the RUBYOPT envar. But, ruby can’t seem to find anything rubygem
related.
Is there some other magical envar that I need to set so that ruby
and rubygems play nice?
You probably want to add:
export RUBYLIB=${HOME}/local/rubygems
Or should I install rubygem “inside” my ruby install? In:
${HOME}/local/ruby/lib/ruby/site_ruby/1.8/i686-linux ?
or
${HOME}/local/ruby/lib/ruby/site_ruby
or
??
This is how rubygems is typically installed (by not supplying the –
prefix option in step 4). But you do not have root access. You just
needed to add rubygems to the $LOAD_PATH.
I followed the notes I made last time I did this[*] and it worked
then, so I’ve screwed something up somewhere; I just don’t know what.
–
Eric H. - [email protected] - http://blog.segment7.net
I LIT YOUR GEM ON FIRE!
Hi Eric,
Eric H. wrote:
- rm -fr’d my “ruby” and “rubygems” installation directories in my
rubygems install
Successfully built RubyGem
export RUBYOPT=“rubygems”
And, of course, ruby and irb no longer work either (same error).
export RUBYLIB=${HOME}/local/rubygems
Well, I eventually figured out that I need
export RUBYLIB=${HOME}/local/rubygems/lib/ruby/site_ruby/1.8
Just specifying ${HOME}/local/rubygems didn’t work.
Or should I install rubygem “inside” my ruby install? In:
${HOME}/local/ruby/lib/ruby/site_ruby/1.8/i686-linux ?
or
${HOME}/local/ruby/lib/ruby/site_ruby
or
??
This is how rubygems is typically installed (by not supplying the
–prefix option in step 4). But you do not have root access. You just
needed to add rubygems to the $LOAD_PATH.
This is going to make your eyes roll, but how does one add a root
subdirectory to
LOAD_PATH so that ruby searches recursively down? The only way I can
figure out how to
modify LOAD_PATH is to list every specific directory via the RUBYLIB
envar – which is
rather onerous.
An online search didn’t reveal anything clever.
cheers,
paulv
On Dec 28, 2006, at 16:50, Eric H. wrote:
On Dec 28, 2006, at 16:30, Paul van Delst wrote:
Is there some other magical envar that I need to set so that ruby
and rubygems play nice?
You probably want to add:
export RUBYLIB=${HOME}/local/rubygems
Actually, from testing, it’ll be more like ${HOME}/local/rubygems/lib/
ruby/site_ruby/1.8 or some-such.
–
Eric H. - [email protected] - http://blog.segment7.net
I LIT YOUR GEM ON FIRE!
Eric H. wrote:
This is how rubygems is typically installed (by not supplying the
–prefix option in step 4). But you do not have root access. You
just needed to add rubygems to the $LOAD_PATH.
Hello again,
O.k., I removed my old rubygems install and did it again but without the
–prefix-dir and
everything is now honky dory.
From the rubygems user manual installation help, I assumed that a
“default” install would
always go to /usr/lib/ruby/etc… But it doesn’t - it gets installed
wherever ruby was
installed (at least, that’s what happened on my box).
Thanks for your patience.
cheers,
paulv
On Dec 28, 2006, at 18:05, Paul van Delst wrote:
From the rubygems user manual installation help, I assumed that a
“default” install would always go to /usr/lib/ruby/etc… But it
doesn’t - it gets installed wherever ruby was installed (at least,
that’s what happened on my box).
Yes, this is correct.
I thought you were installing rubygems using the default (/usr/lib/
ruby) installation, not your own.
–
Eric H. - [email protected] - http://blog.segment7.net
I LIT YOUR GEM ON FIRE!
On Dec 28, 2006, at 17:45, Paul van Delst wrote:
just needed to add rubygems to the $LOAD_PATH.
This is going to make your eyes roll, but how does one add a root
subdirectory to LOAD_PATH so that ruby searches recursively down?
The only way I can figure out how to modify LOAD_PATH is to list
every specific directory via the RUBYLIB envar – which is rather
onerous.
An online search didn’t reveal anything clever.
You can’t, and you don’t really want this.
If you have lib/net/http.rb and recursively add everything you’ll end
up with the ability to require ‘http’ which may cause bad things to
happen like double loading.
–
Eric H. - [email protected] - http://blog.segment7.net
I LIT YOUR GEM ON FIRE!