Ошибка («Программа rails в настоящее время не установлена».) Создание приложения rails3 с использованием RVM

Я использую Ubuntu 11 Tring для установки рельсов 3.1. Кажется, я устанавливаю рельсы, но потом не могу их использовать. Я хочу использовать rvm для установки и использования рельсов, и я не хочу идти по маршруту sudo apt-get.

Спасибо!

durrantm@castleLinux2011:~$ rvm list rubies

rvm rubies

   ruby-1.9.2-p290 [ x86_64 ]

durrantm@castleLinux2011:~$ rvm use --create 1.9.2@rails3
Using /home/durrantm/.rvm/gems/ruby-1.9.2-p290 with gemset rails3
durrantm@castleLinux2011:~$ rvm list rubies

rvm rubies

=> ruby-1.9.2-p290 [ x86_64 ]

durrantm@castleLinux2011:~$ gem install rails
    ERROR:  Loading command: install (LoadError)
    no such file to load -- zlib
    ERROR:  While executing gem ... (NameError)
        uninitialized constant Gem::Commands::InstallCommand
    durrantm@castleLinux2011:~$ sudo gem install rails
    Successfully installed rails-3.1.0
    1 gem installed
    Installing ri documentation for rails-3.1.0...
    file 'lib' not found
    Installing RDoc documentation for rails-3.1.0...
    file 'lib' not found
    durrantm@castleLinux2011:~$ rails
    The program 'rails' is currently not installed.  You can install it by typing:
    sudo apt-get install rails
    durrantm@castleLinux2011:~$ 

Кстати

durrantm@castleLinux2011:~$ gem install rails
ERROR:  Loading command: install (LoadError)
    no such file to load -- zlib
ERROR:  While executing gem ... (NameError)
    uninitialized constant Gem::Commands::InstallCommand
durrantm@castleLinux2011:~$ 

тоже не работает, и я танцевал вокруг проблемы zlib около часа.

Также:

rvm gemset install rails
installing rails ...
ERROR: Error running 'GEM_HOME='/home/durrantm/.rvm/gems/ruby-1.9.2-p290@rails3' GEM_PATH='/home/durrantm/.rvm/gems/ruby-1.9.2-p290@rails3'  gem install rails    ', please read /home/durrantm/.rvm/log/ruby-1.9.2-p290/gem.install.log
rails  failed to install ( output logged to: /home/durrantm/.rvm/log/ruby-1.9.2-p290/gem.install.log )
durrantm@castleLinux2011:~$ tail -20 /home/durrantm/.rvm/log/ruby-1.9.2-p290/gem.install.log
[2011-09-13 09:17:57] GEM_HOME='/home/durrantm/.rvm/gems/ruby-1.9.2-p290@rails3' GEM_PATH='/home/durrantm/.rvm/gems/ruby-1.9.2-p290@rails3'  gem install rails    
ERROR:  Loading command: install (LoadError)
    no such file to load -- zlib
ERROR:  While executing gem ... (NameError)
    uninitialized constant Gem::Commands::InstallCommand
durrantm@castleLinux2011:~$ 

person Michael Durrant    schedule 13.09.2011    source источник


Ответы (2)


нет нет, нет rvmsudo.

rvm pkg install zlib && rvm install 1.9.2 (поэтому он строится на том zlib, который установлен rvm) && rvm --create use 1.9.2@rails31 (чтобы создать гемсет rails31 и использовать его все за один раз)

ПРИМЕЧАНИЕ: используйте rvm install 1.9.2, если вы использовали его для первоначальной установки. появляется -p290, потому что это результат того факта, что проект ruby ​​имеет 290 в качестве официального выпуска, и rvm улавливает это. Таким образом, с 1.9.2, а не с 1.9.2-p290, когда серия 1.9.2 перескакивает, rvm уловит это и установит вместо этого. В противном случае, если вы изначально сделали «rvm install 1.9.2-p290», сделайте это вместо этого.

Что касается команды rails. Если вы выполнили приведенные выше команды, то вы были перемещены в правильный ruby ​​и gemset, контролируемый rvm. Если нет, выполните эту команду сейчас (rvm --create используйте 1.9.2@rails31)

ТЕПЕРЬ вы можете выполнить gem install rails -v='3.1.0' (я добавил версию на случай, если рельсы изменятся до того, как вы это увидите)

Это установит драгоценный камень рельсов и его компоненты в набор драгоценных камней rails31 Ruby 1.9.2-p290. Теперь вы можете выполнить rails new test_app, чтобы протестировать его. (обычно я mkdir -p $HOME/tmp && cd $HOME/tmp && rails new test_app)

Это должно устранить ваши проблемы.

person ddd    schedule 13.09.2011

Вам нужно переустановить рубин. Следуйте инструкциям на странице http://beginrescueend.com/packages/zlib/.

Вы можете столкнуться с той же проблемой с readline или openSSL, проверьте веб-сайт rvm, поскольку они также предоставляют некоторые обходные пути для этих библиотек.

person Augusto    schedule 13.09.2011