Project

General

Profile

Actions

Bug #7860

closed

Passing --libdir to ./configure causes Gem.ruby to point to an incorrect ruby interpreter path

Added by cwgem (Chris White) about 11 years ago. Updated over 2 years ago.

Status:
Closed
Target version:
ruby -v:
ruby 2.0.0dev (2013-02-16 trunk 39262) [x86_64-linux]
Backport:
[ruby-core:52296]

Description

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


Related issues 2 (0 open2 closed)

Related to Ruby master - Bug #7871: exec_prefix regression breaks mingwClosednobu (Nobuyoshi Nakada)02/17/2013Actions
Related to Ruby master - Bug #18373: Bundled gem (RBS, debug) extensions are not properly builtClosednobu (Nobuyoshi Nakada)Actions
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0