From: "jonforums (Jon Forums)" Date: 2013-02-21T09:19:22+09:00 Subject: [ruby-core:52601] [ruby-trunk - Bug #7860] Passing --libdir to ./configure causes Gem.ruby to point to an incorrect ruby interpreter path Issue #7860 has been updated by jonforums (Jon Forums). > Chris White, Jon Forums, > Can you check the current ruby_2_0_0 branch and make sure that your issue(s) is really fixed? mame-san...ruby_2_0_0@39344 solves these recent issues on my `x86_64-linux` (ubuntu server 12.10) machine. I will build `i686-linux` later tonight and report back if any errors. * `exec_prefix` regression * `gem {install,update} --user-install` errors ---------------------------------------- Bug #7860: Passing --libdir to ./configure causes Gem.ruby to point to an incorrect ruby interpreter path https://bugs.ruby-lang.org/issues/7860#change-36690 Author: cwgem (Chris White) Status: Assigned Priority: Normal Assignee: nobu (Nobuyoshi Nakada) Category: build Target version: 2.0.0 ruby -v: ruby 2.0.0dev (2013-02-16 trunk 39262) [x86_64-linux] How I reproduce: ------------------------------------ # git clone git://github.com/ruby/ruby.git # autoreconf # ./configure --libdir=/usr/local/lib64 # make clean && make && make install # /usr/local/bin/ruby -e 'puts Gem.ruby' /bin/ruby ------------------------------------ The problem is how topdir is set with `tool/mkconfig.rb`. This is a diff between `./configure` and `./configure --libdir=/usr/local/lib64`: ------------------------------------------------------------------------------------------ --- /root/rbconfig.rb 2013-02-15 15:20:15.016942074 -0800 +++ /usr/local/lib64/ruby/2.0.0/x86_64-linux/rbconfig.rb 2013-02-15 15:14:20.500932606 -0800 @@ -6,7 +6,7 @@ RUBY_VERSION == "2.0.0" or raise "ruby lib version (2.0.0) doesn't match executable version (#{RUBY_VERSION})" - TOPDIR = File.dirname(__FILE__).chomp!("/lib/ruby/2.0.0/x86_64-linux") + TOPDIR = File.dirname(__FILE__).chomp!("/usr/local/lib64/ruby/2.0.0/x86_64-linux") DESTDIR = '' unless defined? DESTDIR CONFIG = {} CONFIG["DESTDIR"] = DESTDIR @@ -35,7 +35,7 @@ CONFIG["rubyhdrdir"] = "$(includedir)/$(RUBY_VERSION_NAME)" CONFIG["UNIVERSAL_INTS"] = "" CONFIG["UNIVERSAL_ARCHNAMES"] = "" - CONFIG["configure_args"] = "" + CONFIG["configure_args"] = " '--libdir=/usr/local/lib64'" CONFIG["vendorarchdir"] = "$(vendorlibdir)/$(sitearch)" CONFIG["vendorlibdir"] = "$(vendordir)/$(ruby_version)" CONFIG["vendordir"] = "$(rubylibprefix)/vendor_ruby" @@ -199,7 +199,7 @@ CONFIG["DEFS"] = "" CONFIG["mandir"] = "$(datarootdir)/man" CONFIG["localedir"] = "$(datarootdir)/locale" - CONFIG["libdir"] = "$(exec_prefix)/lib" + CONFIG["libdir"] = "$(DESTDIR)/usr/local/lib64" CONFIG["psdir"] = "$(docdir)" CONFIG["pdfdir"] = "$(docdir)" CONFIG["dvidir"] = "$(docdir)" ------------------------------------------------------------------------------------------ Notice how topdir changes. I think this might have been caused by the `tool/mkconfig.rb` changes here: https://github.com/ruby/ruby/commit/29c214e4a058fc4017ab0c0bf5c36b5bad203b5b -- http://bugs.ruby-lang.org/