Fastri kann nicht auf Cygwin ausgeführt werden: nicht initialisiertes konstantes Gem :: Version (NameError)

StackOverflow https://stackoverflow.com/questions/4039858

  •  27-09-2019
  •  | 
  •  

Frage

Ich versuche, Fastri (http://egenclass.org/hiki/fastri) auf EMACs aufzunehmen, die auf Cygwin in Windows ausgeführt werden. Die Ruby -Installation stammt auch von Cygwin, nicht von der Windows -Version von Ruby. Nach dem Herunterladen, Auspacken des Tarballs und dem Ausführen von setup.rb, wenn ich versuche, QRI oder FRI auszuführen, erhalte ich die folgende Fehlermeldung:

    [/cygdrive/g]$qri
/usr/lib/ruby/1.8/rdoc/ri/ri_paths.rb:63: uninitialized constant Gem::Version (NameError)
    from /usr/lib/ruby/1.8/rdoc/ri/ri_paths.rb:59:in `each'
    from /usr/lib/ruby/1.8/rdoc/ri/ri_paths.rb:59
    from /usr/lib/ruby/site_ruby/1.8/fastri/util.rb:38:in `require'
    from /usr/lib/ruby/site_ruby/1.8/fastri/util.rb:38
    from /usr/bin/qri:6:in `require'
    from /usr/bin/qri:6

Meine Ruby -Version und Gem -Umgebung:

[/cygdrive/g]$ruby --version
ruby 1.8.7 (2008-08-11 patchlevel 72) [i386-cygwin]
[/cygdrive/g]$gem environment
RubyGems Environment:
  - RUBYGEMS VERSION: 1.3.4
  - RUBY VERSION: 1.8.7 (2008-08-11 patchlevel 72) [i386-cygwin]
  - INSTALLATION DIRECTORY: /usr/lib/ruby/gems/1.8
  - RUBY EXECUTABLE: /usr/bin/ruby.exe
  - EXECUTABLE DIRECTORY: /usr/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86-cygwin
  - GEM PATHS:
     - /usr/lib/ruby/gems/1.8
     - /home/rrajagop/.gem/ruby/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://gems.rubyforge.org/

Ich habe mir ri_paths.rb angesehen, um herauszufinden, wie Gem :: Version in die Datei aufgenommen werden sollte, aber ich konnte es nicht herausfinden. Ich habe versucht, beide hinzuzufügen require 'gem/version' und require 'version' in ri_paths.rb, aber keine Freude. Ich bekomme 'require': no such file to load -- version (LoadError)

War es hilfreich?

Lösung

Ok, ich habe es endlich zum Laufen gebracht. Hinzufügen require 'rubygems/version' in ri_path.rb hat es behoben.

Im Grunde genommen verwendet puts $: Um die Wege herauszufinden, die erfordern Gem::Version wurde definiert (ich hatte bereits eine vorgefertigte Tags-Tabelle für Ruby und alle meine Edelsteine, also war das einfach), und erarbeitete den Weg zur Version aus der nächsten Komponente des Suchpfads. Klingt einfach, oder? Natürlich brauchte ich ein paar Tage, den Ruby Noob, der ich bin.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top