问题描述
||
我正在尝试在运行Mac OS X Server 10.6.6的生产设备(没有编译器,没有root用户访问权限)上设置Rails应用。它具有ruby 1.8.7(2009-06-12 patchlevel 174)[universal-darwin10.0]和gem 1.3.5。但是,我需要安装较新版本的rubygems,因为我需要Rails 3和Bundler。我无法更新系统ruby或rubygems。
我尝试安装rubygems(v 1.7.2)的本地版本,但是\'gem -v \'仍返回1.3.5。 \'哪个宝石\'绝对指向我本地的rubygems二进制文件。我究竟做错了什么?
这是\'gem env \'的输出:
RubyGems环境:
-RUBYGEMS版本:1.3.5
-橄榄球版本:1.8.7(2009-06-12补丁程序级别174)[universal-darwin10.0]
-安装目录:/.gem/ruby/1.8/gems
-可执行的RUBY:/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
-执行目录:/.gem/ruby/1.8/gems/bin
-RUBYGEMS平台:
-红宝石
-通用达尔文10
-创业板路径:
-/.gem/ruby/1.8/gems
-/.gem/ruby/1.8
-/图书馆/红宝石/宝石/1.8
-/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
-宝石配置:
-:update_sources =>是
-:详细=> true
-:基准=>否
-:backtrace =>否
-:批量阈值=> 1000
-远程资源:
-http://gems.rubyforge.org/
加成:
当我运行
gem update --system
时,出现以下错误:
Updating RubyGems
Updating rubygems-update
Successfully installed rubygems-update-1.8.5
Updating RubyGems to 1.8.5
Installing RubyGems 1.8.5
ERROR: While executing gem ... (Errno::EACCES)
Permission denied - /Library/Ruby/Site/1.8/gauntlet_rubygems.rb
RubyGems system software update
它仍然报告运行版本1.3.5
解决方法
您是否更新了PATH,以优先使用本地gem 1.7.2二进制文件而不是默认文件?例如。如果您在
~/bin
中安装了1.7.2二进制文件,则需要将.bash_profile
更新为export PATH=\"~/bin:$PATH\"
。
运行which gem
,查找运行gem env
时正在调用的gem二进制文件。
,您可以在服务器上安装rvm吗?如果是这样,那么您可以在自己的应用程序专用rvm中运行,并在其中包含所需的任何gem / rubygems。