Difficulty updating Ruby Gems in a non-standard location

I have Ruby Gems installed in a non-standard location. Both
$GEM_PREFIX and $GEM_HOME are set. I’m attempting to update from
0.9.4 to 1.3.5, without success.

First attempt: I tried “gem update --system”. This didn’t work
because it ignored $GEM_PREFIX and installed in the wrong location.

Second attempt: I tried the instructions here:
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/243916
This completely broke gem; every time I tried to do something with
it I got this error:
/opt/ruby-gems/bin/gem:14: undefined method `ruby_version’ for
Gem:Module (NoMethodError)

Third attempt: I restored my gem directory from backup and tried “gem
install rubygems-update && update_rubygems”. This gave the following
error:
Error: Cannot find RubyGems Update Path!

RubyGems has already been updated.
The rubygems-update gem may now be uninstalled.
E.g.    gem uninstall rubygems-update

So, now I’m stumped. How do I update Ruby Gems if it’s not installed
in the standard location?

David Brodbeck
System A., Linguistics
University of Washington

On Oct 8, 2009, at 10:53 AM, David Brodbeck wrote:

/opt/ruby-gems/bin/gem:14: undefined method `ruby_version’ for

So, now I’m stumped. How do I update Ruby Gems if it’s not
installed in the standard location?

I would suggest downloading the tar.gz and running setup.rb (making
sure GEM_PREFIX and GEM_HOME are set). That might clear up your
problems.

You can grab the tar.gz file here:

 http://rubyforge.org/frs/?group_id=126

Aaron P.
http://tenderlovemaking.com

On Oct 8, 2009, at 11:28 AM, Aaron P. wrote:

This completely broke gem; every time I tried to do something with
The rubygems-update gem may now be uninstalled.

http://rubyforge.org/frs/?group_id=126

Unfortunately, that failed in the same way “gem update --system” did
– it ignored $GEM_PREFIX and tried to install gem under /usr/bin/
gem. The gem installation in /opt/ruby-gems was left untouched.

David Brodbeck
System A., Linguistics
University of Washington

On Oct 8, 2009, at 3:39 PM, David Brodbeck wrote:

ruby setup.rb --prefix=/opt/ruby-gems

That went to the right place, but now gem is broken:

$ gem
/opt/ruby-gems/bin/gem:14: undefined method `ruby_version’ for
Gem:Module (NoMethodError)

I finally figured it out. I had two copies under ruby-gems, a new one
in /opt/ruby-gems/lib and an old one in /opt/ruby-gems/lib/site_ruby/
1.8. I deleted the latter and it seems to be working now.

Thanks to everyone for their help.

David Brodbeck
System A., Linguistics
University of Washington

On Thursday 08 October 2009 01:51:33 pm David Brodbeck wrote:

http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/243916 This
RubyGems has already been updated.
You can grab the tar.gz file here:

http://rubyforge.org/frs/?group_id=126

Unfortunately, that failed in the same way “gem update --system” did
– it ignored $GEM_PREFIX and tried to install gem under /usr/bin/
gem. The gem installation in /opt/ruby-gems was left untouched.

Using the source you downloaded, make sure that GEM_HOME is exported,
then run
setup with the prefix to the install location:

ruby setup.rb --prefix=/opt/ruby-gems

  • spox

On Oct 8, 2009, at 2:43 PM, spox wrote:

Unfortunately, that failed in the same way “gem update --system” did
– it ignored $GEM_PREFIX and tried to install gem under /usr/bin/
gem. The gem installation in /opt/ruby-gems was left untouched.

Using the source you downloaded, make sure that GEM_HOME is
exported, then run
setup with the prefix to the install location:

ruby setup.rb --prefix=/opt/ruby-gems

That went to the right place, but now gem is broken:

$ gem
/opt/ruby-gems/bin/gem:14: undefined method `ruby_version’ for
Gem:Module (NoMethodError)

David Brodbeck
System A., Linguistics
University of Washington