Prev: Uninstalling the rubygems application
Next: rubygem
From: Nikolai Lugovoi on 17 Mar 2010 12:18 Here is another oddity, and I could not trace source of it: irb(main):001:0> Gem::ConfigMap => {:EXEEXT=>"", :RUBY_SO_NAME=>"ruby", :arch=>"i686-linux", :bindir=>"/home/nlugovoi/lib/ruby/bin", :libdir=>"/home/nlugovoi/lib/ruby/lib", :ruby_install_name=>"ruby", :ruby_version=>"1.9.1", :rubylibprefix=>"/home/nlugovoi/lib/ruby/lib/ruby", :sitedir=>"/home/nlugovoi/lib/ruby/lib/ruby/site_ruby", :sitelibdir=>"/home/nlugovoi/lib/ruby/lib/ruby/site_ruby/1.9.1"} irb(main):002:0> Gem.path => ["/home/nlugovoi/.gem/ruby/1.9.1", "/home/nlugovoi/lib/ruby/lib/ruby/gems/1.9.1"] irb(main):003:0> Gem.clear_paths => nil irb(main):004:0> Gem::ConfigMap => {:EXEEXT=>"", :RUBY_SO_NAME=>"ruby", :arch=>"i686-linux", :bindir=>"/home/nlugovoi/bin", :libdir=>"/home/nlugovoi/lib", :ruby_install_name=>"ruby", :ruby_version=>"1.9.1", :rubylibprefix=>"/home/nlugovoi/lib/ruby", :sitedir=>"/home/nlugovoi/lib/ruby/site_ruby", :sitelibdir=>"/home/nlugovoi/lib/ruby/site_ruby/1.9.1", :datadir=>"/home/nlugovoi/share", :vendordir=>"/home/nlugovoi/lib/ruby/vendor_ruby", :vendorlibdir=>"/home/nlugovoi/lib/ruby/vendor_ruby/1.9.1"} irb(main):005:0> Gem.path => ["/home/nlugovoi/.gem/ruby/1.9.1", "/home/nlugovoi/lib/ruby/gems/1.9.1"] so, at the moment of loading, Gem::ConfigMap points to wrong directories, :rubylibprefix=>"$HOME/lib/ruby/lib/ruby" instead of :rubylibprefix=>"$HOME/lib/ruby", and fixes that only after Gem.clear_paths How can that happen that in gem_prelude.rb ConfigMap receives such incorrect values?
From: Nikolai Lugovoi on 17 Mar 2010 12:58 Actually, that seems to be a bug, introduced in svn rev26881, that results in : ruby.c:448: rb_const_set(rb_cObject, rb_intern_const("TMP_RUBY_PREFIX"), rb_obj_freeze(rb_str_new(RUBY_LIB_PREFIX, sizeof(RUBY_LIB_PREFIX)-1))); added to ruby bugs: http://redmine.ruby-lang.org/issues/show/2978 sorry for the noise
|
Pages: 1 Prev: Uninstalling the rubygems application Next: rubygem |