После установки драгоценных камней ruby ​​запуск нового камня возвращает ошибки «Не удалось найти» - PullRequest
11 голосов
/ 08 марта 2012

Fresh Ubuntu 10.04 install:

У меня возникли проблемы с настройкой процесса установки гема.Каждый раз, когда я устанавливаю гем, он проходит приятный, простой процесс без проблем:

$ gem install rails
Successfully installed rails-3.2.2
1 gem installed

А затем, чтобы проверить версию, возможно, просто "rails -v"?Нет:

$ rails -v
/home/pragone/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find railties (>= 0) amongst [bigdecimal-1.1.0, io-console-0.3, json-1.5.4, minitest-2.5.1, rake-0.9.2.2, rdoc-3.9.4] (Gem::LoadError)
from /home/pragone/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec'
from /home/pragone/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems.rb:1210:in `gem'
from /home/pragone/.rvm/gems/ruby-1.9.3-p125/bin/rails:18:in `<main>'

Итак, давайте удостоверимся, что установлены railties:

$ gem install railties
Successfully installed railties-3.2.2
1 gem installed

И попробуйте снова получить версию rails:

$ rails -v
/home/pragone/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find railties (>= 0) amongst [bigdecimal-1.1.0, io-console-0.3, json-1.5.4, minitest-2.5.1, rake-0.9.2.2, rdoc-3.9.4] (Gem::LoadError)
from /home/pragone/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec'
from /home/pragone/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems.rb:1210:in `gem'
from /home/pragone/.rvm/gems/ruby-1.9.3-p125/bin/rails:18:in `<main>'

Это происходит спочти каждый драгоценный камень, который я устанавливаю.Я пытался найти какую-то документацию о том, как все установлено с помощью gem, но ничего не смог найти.Кажется, что некоторые драгоценные камни установлены в одном месте, а некоторые в другом, и одно из этих мест не на моем пути.Есть идеи, что здесь происходит?

РЕДАКТИРОВАТЬ: Запрошенная информация:

RubyGems Environment:
  - RUBYGEMS VERSION: 1.8.17
  - RUBY VERSION: 1.9.3 (2012-02-16 patchlevel 125) [x86_64-linux]
  - INSTALLATION DIRECTORY: /home/pragone/.rvm/gems/ruby-1.9.3-p125
  - RUBY EXECUTABLE: /home/pragone/.rvm/rubies/ruby-1.9.3-p125/bin/ruby
  - EXECUTABLE DIRECTORY: /home/pragone/.rvm/gems/ruby-1.9.3-p125/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-linux
  - GEM PATHS:
     - /home/pragone/.rvm/gems/ruby-1.9.3-p125
     - /home/pragone/.rvm/gems/ruby-1.9.3-p125@global
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
     - "gem" => "--no-ri --no-rdoc"
  - REMOTE SOURCES:
     - http://rubygems.org/

И rvm информация:

system:

  system:
    uname:       "Linux domU-12-31-39-0A-34-6E 2.6.32-311-ec2 #23-Ubuntu SMP Thu Dec 2 11:14:35 UTC 2010 x86_64 GNU/Linux"
    bash:        "/bin/bash => GNU bash, version 4.1.5(1)-release (x86_64-pc-linux-gnu)"
    zsh:         " => not installed"

  rvm:
    version:      "rvm 1.10.3 by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.beginrescueend.com/]"
    updated:      "2 hours 40 minutes 7 seconds ago"

  homes:
    gem:          "not set"
    ruby:         "not set"

  binaries:
    ruby:         "/usr/bin/ruby"
    irb:          "/usr/bin/irb"
    gem:          "/usr/bin/gem"
    rake:         "/home/pragone/.rvm/bin/rake"

  environment:
    PATH:         "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/pragone/.rvm/bin"
    GEM_HOME:     ""
    GEM_PATH:     ""
    MY_RUBY_HOME: ""
    IRBRC:        ""
    RUBYOPT:      ""
    gemset:       ""

Кроме того, с вышеупомянутым PATH, я получаю это при попытке запустить rails:

The program 'rails' is currently not installed.  You can install it by typing:
sudo apt-get install rails

Однако вышеупомянутые ошибки произошли, когда я взломал и добавил их в свой PATH:

/home/pragone/.rvm/gems/ruby-1.9.3-p125/bin
/home/pragone/.rvm/gems/ruby-1.9.3-p125/gems

Я попытался повторно запустить ~ / .rvm / scripts /гм, но не похоже, что он добавляет правильные пути к моей PATH.Я также немного поработал над рабочей установкой (мой MacBook Pro, работает под управлением ОС OS X 10.7) и убедился, что ~ / .rvm / scripts / rvm добавляет элементы в мой PATH в рабочей установке, но не вUbuntu box.

which rails: взломанный путь:

$ which rails
/home/pragone/.rvm/gems/ruby-1.9.3-p125/bin/rails

which rails: свежий путь: (нет ответа; предположительно не найден)

$ which rails
$

Ответы [ 2 ]

21 голосов
/ 09 марта 2012

Кажется, отсутствующая ссылка была

$ rvm use ruby-1.9.3-p125 --default

Кажется, это исправили.

PS: Спасибо за просмотр. Для вашего развлечения, если вы еще не видели его на HN (это питон, но все же хороший смешок): https://gist.github.com/289467

0 голосов
/ 14 марта 2014

Попробуйте, у меня все работает:

gem update --system

...