2017-02-15 1 views
0

системы: OSX 10.9.5, Rails 4.0.12система не может видеть Rails или другие драгоценные камни, говорит «Rails в настоящее время не установлен на этой системе»

После клонирования репо на демо-приложение (Ruby 2.1. 5, Rails 4.1.0), я использовал rvm для установки, а затем переключился на более раннюю версию Ruby, поэтому я мог запустить демонстрационное приложение. У меня были некоторые проблемы, запущенные демо-приложение, поэтому я вернулся к моему основному приложению проекта (Ruby 2.2.4, Rails 4.0.12), пытался бежать rails s и получил:

Rails is not currently installed on this system. To get the latest version, simply type: 

    $ sudo gem install rails 

You can then rerun your "rails" command. 

Ну это просто глупо. Рельсы были здесь только мгновение назад. Я попытался переключить gemset в Ruby 2.2.4, даже закрывая терминал между ними, но Rails был «не установлен». Это мои gemsets:

gemsets for ruby-2.0.0-p481 (found in /Users/localflavor/.rvm/gems/ruby-2.0.0-p481) 
=> (default) 
    global 

gemsets for ruby-2.1.5 (found in /Users/localflavor/.rvm/gems/ruby-2.1.5) 
=> (default) 
    global 

gemsets for ruby-2.2.1 (found in /Users/localflavor/.rvm/gems/ruby-2.2.1) 
=> (default) 
    global  

gemsets for ruby-2.2.2 (found in /Users/localflavor/.rvm/gems/ruby-2.2.2) 
=> (default) 
    global 

gemsets for ruby-2.2.4 (found in /Users/localflavor/.rvm/gems/ruby-2.2.4) 
=> (default) 
    global 

gemsets for ruby-2.3.0 (found in /Users/localflavor/.rvm/gems/ruby-2.3.0) 
=> (default) 
    global 

Драгоценные камни, включенные в [email protected]:

$ gem list 
*** LOCAL GEMS *** 
bigdecimal (default: 1.2.6) 
gem-wrappers (1.2.7) 
io-console (default: 0.4.3) 
json (default: 1.8.1) 
minitest (5.4.3) 
power_assert (0.2.2) 
psych (default: 2.0.8) 
rake (default: 10.4.2) 
rdoc (default: 4.2.0) 
rvm (1.11.3.9) 
test-unit (3.0.8) 

Драгоценные камни, включенные в [email protected]

$ gem list 
*** LOCAL GEMS *** 
bigdecimal (default: 1.2.6) 
gem-wrappers (1.2.7) 
io-console (default: 0.4.3) 
json (default: 1.8.1) 
minitest (5.4.3) 
power_assert (0.2.2) 
psych (default: 2.0.8) 
rake (default: 10.4.2) 
rdoc (default: 4.2.0) 
rvm (1.11.3.9) 
test-unit (3.0.8) 

Rails, где ты? Я пробовал rvm get master, переустановил ruby ​​2.2.4, openssl и bundler. Я пробовал каждое решение, которое казалось актуальным с this SO question. Все это безрезультатно.

Интересно, что я также не могу установить последнюю версию Ruby (2.4.0).

$ rvm install ruby 2.4.0 
ruby-2.4.0 - #removing src/ruby-2.4.0.. 
Searching for binary rubies, this might take some time. 
No binary rubies available for: osx/10.9/x86_64/ruby-2.4.0. 
Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies. 
Checking requirements for osx. 
Certificates in '/usr/local/etc/openssl/cert.pem' are already up to date. 
Requirements installation successful. 
Installing Ruby from source to: /Users/localflavor/.rvm/rubies/ruby-2.4.0, this may take a while depending on your cpu(s)... 
ruby-2.4.0 - #downloading ruby-2.4.0, this may take a while depending on your connection... 
ruby-2.4.0 - #extracting ruby-2.4.0 to /Users/localflavor/.rvm/src/ruby-2.4.0.... 
ruby-2.4.0 - #configuring................................................................... 
ruby-2.4.0 - #post-configuration. 
ruby-2.4.0 - #compiling.................... 
Error running '__rvm_make -j 1', 
showing last 15 lines of /Users/localflavor/.rvm/log/1487187741_ruby-2.4.0/make.log 
configuring pty 
configuring racc/cparse 
configuring rbconfig/sizeof 
configuring readline 
configuring ripper 
configuring rubyvm 
configuring sdbm 
configuring socket 
configuring stringio 
configuring strscan 
configuring syslog 
configuring zlib 
exts.mk:1471: *** commands commence before first target. Stop. 
make: *** [build-ext] Error 2 
++ return 2 
There has been an error while running make. Halting the installation. 

Я предполагаю, что Rails здесь, просто не видно. Точно так же, как bundler и openssl. Что-то случилось, и я не знаю, где еще искать. Как я могу найти его и вернуть его в действие?


UPDATE

Хотя мои вопросы SSL все еще не решены, я был в состоянии сделать это временное решение, чтобы получить Rails и продолжить игру (спасибо Kevin-T!)

Поскольку Rails не хватало оба gemsets для ruby ​​2.2.4 (спасибо 7stud для указателей списка драгоценных камней), мне нужно было переустановить его. Но я получаю эту ошибку, когда я побежал gem install rails -v 4.0.12

ERROR: While executing gem ... (Gem::Exception) 
    Unable to require openssl, install OpenSSL and rebuild ruby (preferred) or use non-HTTPS sources 

Поэтому я выбрал вариант 2: использовать не HTTPS источник.Для того, чтобы сделать это, я побежал gem source, чтобы подтвердить, что мой источник был https:

*** CURRENT SOURCES *** 

https://rubygems.org/ 

Я добавил новую версию http с gem source --add http://rubygems.org:

https://rubygems.org is recommended for security over http://rubygems.org 

Do you want to add this insecure source? [yn] y <-- I said yes 
http://rubygems.org added to sources 

Я проверил, что он был добавлен с gem source:

*** CURRENT SOURCES *** 

https://rubygems.org/ 
http://rubygems.org <-- the new one 

Затем удалено https с gem source --remove https://rubygems.org/:

https://rubygems.org/ removed from sources 

В этот момент работает gem install rails -v 4.0.12. Оформить this post для установки без громоздкой документации.

ответ

0

В настоящее время Rails не используется. Чтобы получить последнюю версию , просто введите:

$ sudo gem install rails 

Вы можете повторно запустить вашу команду «рельсы».


Ну это просто глупо. Рельсы были здесь только мгновение назад.

Первое предупреждение: НИКОГДА не используйте sudo с rvm.

С РВМ, есть две вещи, которые вы должны обратить внимание на:

  1. рубин версия.
  2. Gemset.

Gemset - это как самостоятельный пакет с определенными драгоценными камнями. К см. эти драгоценные камни, вы должны быть используя что gemset. Если вы используете другой гемсет, то вы будете см. различных драгоценных камней.

Для того, чтобы убедиться в том, что драгоценный камень содержится в gemset, который выбран в данный момент, вы можете сделать это:

$ gem list 

Для получения общих инструкций о том, как использовать RVM трейлеры рельсы и различную gemsets, смотрите здесь:

Change rails version used by rvm

Интересно, что я также не удалось установить последнюю версию Руби (2.4.0).

Ваш выход показывает, что у rvm возникает проблема с составлением zlib. Похоже, что в среде rbenv также возникают проблемы с компиляцией zlib на OSX.Вы можете попробовать их исправить:

https://github.com/rbenv/ruby-build/issues/832

0

Rvm было this issue не так давно. Это предшествовало рубину 2.4.0, но, может быть, у вас такая же проблема? Я подозреваю, что вы используете более старую версию, если вы используете OS X 10.9. Решение рекомендуется по этому вопросу, чтобы просто обновить RVM с

rvm get master 

Я бы попробовать запустить что, а затем повторить попытку ваших команд RVM.

Sidenote: проверка PGP является обязательным с РВМ, так что вам может понадобиться запустить

gpg2 --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 

первый.

+0

Спасибо за головы на gpg2! @Glyoko – richardson