我正在尝试使用最新版本的Rails运行我的计算机(Mac OS X,运行Leopard)。在此之前,我有2.3.5。我几天前试着遵循一些指示,但似乎没有取得多大进展。现在,我无法在Rails中执行任何。你会在一秒钟内看到我的意思。
从理论上讲,我有最新版本的Ruby:
$ ruby -v
ruby 1.8.7 (2009-06-12 patchlevel 174) [i686-darwin9]
$ sudo ruby -v
Password:
ruby 1.8.7 (2009-06-12 patchlevel 174) [i686-darwin9]
但是如果我尝试运行Rails,我会收到以下错误消息:
$ rails testapp03
Rails requires Ruby version 1.8.7 or later.
You're running 1.8.6 (2008-08-11); please upgrade to continue.
如果我试着看看我正在使用哪个版本的Rails,我也会这样:
$ rails -v
Rails requires Ruby version 1.8.7 or later.
You're running 1.8.6 (2008-08-11); please upgrade to continue.
如果这些有用:
$ which ruby
/opt/local/bin/ruby
$ sudo which ruby
Password:
/opt/local/bin/ruby
$ which rails
/usr/bin/rails
所以,问题是:我做了什么,我需要做些什么才能在我的计算机上启动并运行Ruby / RubyGems / Rails?
答案 0 :(得分:4)
which gem
返回什么?
可能,您的Ruby安装指向/opt/local/bin/
,而gem命令仍然引用/usr/bin/
。
当您安装Gem时,Gem保存在/usr/bin/
中并加载原始系统Ruby。
我不知道你是如何安装Ruby 1.8.7的,但是我建议你更进一步:删除你所有的Ruby版本(当然除了系统版本)并尝试RVM。< / p>
答案 1 :(得分:1)
尝试从命令行执行此命令/opt/local/bin/ruby -v
,看看出来的ruby版本。
接下来找出红宝石宝石在whereis ruby
的位置。我认为它应该在/opt/local/lib/ruby-x.x/gems/...
附近。另外,请尝试查看是否在这些目录下安装了rails。如果没有,你的导轨可能仍然指向旧的红宝石。
还要检查你是否有/ usr / bin / ruby?如果是这样,/ usr / bin / ruby -v的输出是什么? 如果它存在并且rails指向该版本,那么您应该卸载该ruby和rails,并使用/ opt / local / bin / ruby重新安装rails gem