我刚刚执行此命令来安装Rails:
gem install rails
似乎运行良好并安装了东西。
然后,当我按照本教程:http://guides.rubyonrails.org/getting_started.html时,它说要执行此命令:
rails new blog
我做了什么,它给了我这个错误:
The program 'rails' is currently not installed. You can install it by typing:
sudo apt-get install rails
知道为什么会这样吗?我认为rails应该自动开始工作:)
我做了这个命令:
rvm gemdir
它给了我这个结果:
RubyGems Environment:
- RUBYGEMS VERSION: 1.6.2
- RUBY VERSION: 1.9.2 (2011-02-18 patchlevel 180) [i686-linux]
- INSTALLATION DIRECTORY: /home/agenadinik/.rvm/gems/ruby-1.9.2-p180
- RUBY EXECUTABLE: /home/agenadinik/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
- EXECUTABLE DIRECTORY: /home/agenadinik/.rvm/gems/ruby-1.9.2-p180/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86-linux
- GEM PATHS:
- /home/agenadinik/.rvm/gems/ruby-1.9.2-p180
- /home/agenadinik/.rvm/gems/ruby-1.9.2-p180@global
应该是这样的:
EXECUTABLE DIRECTORY: /usr/bin
答案 0 :(得分:6)
RVM和apt-get不兼容;他们试图解决同样的软件安装问题,但方式却截然不同。
apt-get总是将它管理的软件安装到系统的目录中,你必须以root身份运行才能这样做。 RVM旨在作为用户的沙箱安装,安装到~/.rvm
,隔离它从系统安装的所有内容,但仍然可以将其用于用户的代码。
Should there be something like this:
EXECUTABLE DIRECTORY: /usr/bin
不,不适用于RVM托管的Ruby。所有RVM管理的Rubies和gem都应位于~/.rvm
某处。
使用which ruby
查看系统认为您的Ruby路径应该是什么。如果RVM配置正确,并且您使用RVM安装了Ruby,则返回的路径应为:
/home/agenadinik/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
如果RVM安装没有问题,您应该使用RVM的installation页面上的“安装疑难解答”检查来检查配置。
如果正常工作的Ruby是正确的,请输入which rails
,您应该会看到一个响应,显示它位于某个地方的~/.rvm
沙箱中。如果是,请尝试gem list rails
。 Rubygems应该回复:
rails (3.0.7)
用于当前的Rails安装。如果没有,请使用gem install rails
,并应在几分钟的搅拌后安装。然后,再次执行gem list rails
命令,您应该看到它后跟which rails
,显示它对系统可见。
另一个问题是,您的RVM看起来已过时,或者您没有将rvm gemdir
用于gems输出,因为rvm gemdir
未在当前版本中返回该信息。要更新它,请使用rvm get head
,然后使用rvm reload
或关闭并重新打开终端。随后的rvm -v
应该返回1.6.3版本,这是截至今天的最新版本。 RVM快速更新,因此请务必定期更新它以修复错误。我每周检查几次,但每周应该没问题,每月应该足够了。
答案 1 :(得分:-2)
我的猜测是'rails'安装在不在用户路径中的某个地方。
您可能会尝试locate rails
,但我不认为sudo apt-get install rails
会导致您认为会出现的问题,而是会在您使用aptitude安装内容时解决您的问题。这很聪明。 :)