Project

General

Profile

Bug #14747

uninitialized constant Gem::PathSupport

Added by duerst (Martin Dürst) over 2 years ago. Updated over 1 year ago.

Status:
Closed
Priority:
Normal
Target version:
-
ruby -v:
ruby 2.3.6p384 (2017-12-14 revision 9808) [x86_64-cygwin] last_commit=ruby 2.3.3
[ruby-core:86967]

Description

I'm getting the following error repeatedly:

/cygdrive/c/Data/ruby/lib/rubygems.rb:393:in `paths': uninitialized constant Gem::PathSupport (N   ameError)
make: *** [uncommon.mk:353: do-install-nodoc] Error 1

I have set --with-baseruby=/usr/bin/ruby, which is an old version of ruby, and started from ./configure, but that doesn't help.

The command I use to compile is

make up unicode-up install-nodoc runnable

The source is at the newest revision, r63393.

Updated by hsbt (Hiroshi SHIBATA) over 2 years ago

It caused by broken csv-1.0.2.gemspec. Can you try to clean installation directory and re-install trunk version?

#2

Updated by hsbt (Hiroshi SHIBATA) over 2 years ago

  • Status changed from Open to Assigned

Updated by duerst (Martin Dürst) over 2 years ago

hsbt (Hiroshi SHIBATA) wrote:

I caused by broken csv-1.0.3.gemspec. Can you try to clean installation directory and re-install trunk version?

I tried. I completely removed the checkout, and checked everything out from svn again, then starting with autoconf and ./configure. I still get the same error.

Updated by hsbt (Hiroshi SHIBATA) over 2 years ago

  • Status changed from Assigned to Feedback

I fixed this problem at r63377. I think that this is your environment problem.

Did you clean-up with /cygdrive/c/Data/ruby ?

Updated by duerst (Martin Dürst) over 2 years ago

Sorry to be late with my reply

hsbt (Hiroshi SHIBATA) wrote:

I fixed this problem at r63377. I think that this is your environment problem.

Did you clean-up with /cygdrive/c/Data/ruby ?

Yes I did. I completely removed this directory, and made a full new checkout. As far as I understand from the details of the error messages (see below), during building, the downloaded local copies of gems are used. That would mean that the environment would not have any effect. But of course, there might be other ways that the environment can influence the result.

Also, r63377 is about the csv gem, but the error appears to be unrelated to the csv gem (as far as I can see). Again, I might be wrong here, too.

Anyway, this is a larger part of the error message:

making trans
make[1]: Entering directory '/cygdrive/c/Data/ruby'
make[1]: Nothing to be done for './enc/trans'.
make[1]: Leaving directory '/cygdrive/c/Data/ruby'
making encs
make[1]: Entering directory '/cygdrive/c/Data/ruby'
make[1]: Nothing to be done for 'encs'.
make[1]: Leaving directory '/cygdrive/c/Data/ruby'
building rb_mjit_header.h
rb_mjit_header.h updated
building .ext/include/x86_64-cygwin/rb_mjit_min_header-2.6.0.h
./miniruby.exe -I./lib -I. -I.ext/common  ./tool/transform_mjit_header.rb "gcc " rb_mjit_header.h .ext/include/                                    x86_64-cygwin/rb_mjit_min_header-2.6.0.h

Transforming external functions to static:
transform_mjit_header: making external definition of 'rb_vm_pop_cfunc_frame' static inline

(many more similar messages)

transform_mjit_header: making declaration of 'rb_error_arity' static inline
./miniruby.exe -I./lib -I. -I.ext/common  ./tool/runruby.rb --extout=.ext  -- --disable-gems -r./x86_64-cygwin-                                    fake ./tool/rbinstall.rb --make="make" --dest-dir="" --extout=".ext" --mflags="" --make-flags="" --data-mode=06                                    44 --prog-mode=0755 --installed-list .installed.list --mantype="doc"
Traceback (most recent call last):
        19: from ./tool/rbinstall.rb:626:in `<main>'
        18: from ./tool/rbinstall.rb:627:in `<module:RbInstall>'
        17: from /cygdrive/c/Data/ruby/lib/rubygems/core_ext/kernel_require.rb:47:in `require'
        16: from /cygdrive/c/Data/ruby/lib/rubygems/core_ext/kernel_gem.rb:65:in `gem'
        15: from /cygdrive/c/Data/ruby/lib/rubygems/dependency.rb:322:in `to_spec'
        14: from /cygdrive/c/Data/ruby/lib/rubygems/dependency.rb:302:in `to_specs'
        13: from /cygdrive/c/Data/ruby/lib/rubygems/dependency.rb:279:in `matching_specs'
        12: from /cygdrive/c/Data/ruby/lib/rubygems/specification.rb:869:in `stubs_for'
        11: from /cygdrive/c/Data/ruby/lib/rubygems/specification.rb:999:in `dirs'
        10: from /cygdrive/c/Data/ruby/lib/rubygems.rb:439:in `path'
         9: from /cygdrive/c/Data/ruby/lib/rubygems.rb:393:in `paths'
         8: from /cygdrive/c/Data/ruby/lib/rubygems/core_ext/kernel_require.rb:47:in `require'
         7: from /cygdrive/c/Data/ruby/lib/rubygems/core_ext/kernel_gem.rb:65:in `gem'
         6: from /cygdrive/c/Data/ruby/lib/rubygems/dependency.rb:322:in `to_spec'
         5: from /cygdrive/c/Data/ruby/lib/rubygems/dependency.rb:302:in `to_specs'
         4: from /cygdrive/c/Data/ruby/lib/rubygems/dependency.rb:279:in `matching_specs'
         3: from /cygdrive/c/Data/ruby/lib/rubygems/specification.rb:869:in `stubs_for'
         2: from /cygdrive/c/Data/ruby/lib/rubygems/specification.rb:999:in `dirs'
         1: from /cygdrive/c/Data/ruby/lib/rubygems.rb:439:in `path'
/cygdrive/c/Data/ruby/lib/rubygems.rb:393:in `paths': uninitialized constant Gem::PathSupport (NameError)
make: *** [uncommon.mk:353: do-install-nodoc] Error 1
rm cygruby260.rc

duerst@Arnisee /cygdrive/c/Data/ruby

What is especially intriguing to me is that ./miniruby.exe is called with --disable-gems, but then there is a gem-related error.

Updated by duerst (Martin Dürst) over 2 years ago

  • Status changed from Feedback to Assigned

I have been able to 'solve' this problem by adding

require 'rubygems/path-support'

at the start (around line 23) of lib/rubygems.rb.

I can commit this, or feed it back upstream (or just keep it for myself, if I'm the only one having this problem).

Updated by janfri (Jan Friedrich) over 2 years ago

duerst (Martin Dürst) wrote:

I have been able to 'solve' this problem by adding

require 'rubygems/path-support'

at the start (around line 23) of lib/rubygems.rb.

I can commit this, or feed it back upstream (or just keep it for myself, if I'm the only one having this problem).

Hey this is my patch. ;-) I did the same and it worked for me. But for the actual trunk it seems not longer to be necessary?

Updated by duerst (Martin Dürst) over 2 years ago

janfri (Jan Friedrich) wrote:

Hey this is my patch. ;-) I did the same and it worked for me. But for the actual trunk it seems not longer to be necessary?

I removed my/your 'patch' (see https://bugs.ruby-lang.org/issues/14747#note-6), and the compilation continued to work. So I'll close this issue.

So this seems to be a transient issue, but it doesn't go away by removing everything and checking out all of the source from scratch. I don't know why, but anyway, we have a solution.

Updated by hsbt (Hiroshi SHIBATA) over 1 year ago

  • Status changed from Assigned to Feedback

duerst (Martin Dürst)

Did you still have this issue? I couldn't reproduce and face this.

Updated by duerst (Martin Dürst) over 1 year ago

  • Status changed from Feedback to Closed

hsbt (Hiroshi SHIBATA) wrote:

Did you still have this issue? I couldn't reproduce and face this.

No, this was long ago, and hasn't resurfaced. Closing.

Also available in: Atom PDF