ruby - 无法安装 gem 或 RVM

标签 ruby rubygems rvm rbenv rbenv-gemset

我正在尝试安装 Foundation with Sass and Compass但是我很难得到这个,或者通过终端安装任何 gem。我使用的是运行最新版本 OS X 的 Macbook Pro。

运行 gem install zurb-foundationgem install bundler 返回以下错误:

ERROR:  While executing gem ... (TypeError)
can't convert Array into String

对于 $ sudo gem update --system --no-user-install 我得到同样的错误

我的 gem env 是什么样子的:

RubyGems Environment:
- RUBYGEMS VERSION: 1.8.25
- RUBY VERSION: 1.9.3 (2013-02-06 patchlevel 385) [x86_64-darwin12.2.0]
- INSTALLATION DIRECTORY: ["/Users/mc/.gems"]
- RUBY EXECUTABLE: /Users/mc/.rvm/rubies/ruby-1.9.3-p385/bin/ruby
- EXECUTABLE DIRECTORY: /Users/mc/.gems/bin
- RUBYGEMS PLATFORMS:
 - ruby
 - x86_64-darwin-12
- GEM PATHS:
 - ["/Users/mc/.gems"]
 - /usr/lib/ruby/gems/1.8
- GEM CONFIGURATION:
 - :update_sources => true
 - :verbose => true
 - :benchmark => false
 - :backtrace => false
 - :bulk_threshold => 1000
 - :sources => ["http://rubygems.org/", "https://rubygems.org"]
 - "gem" => "--no-rdoc --no-ri"
 - "gempath" => ["/usr/lib/ruby/gems/1.8"]
 - "gemhome" => ["/Users/mc/.gems"]
- REMOTE SOURCES:
 - http://rubygems.org/
 - https://rubygems.org

我有最新版本的 xCode,并安装了命令行工具插件。

有些东西告诉我这是一个目录/权限问题,因为如果我在 OS X 上以 root 身份登录,我没有任何问题。我曾尝试使用 RVM 内爆并重新安装 ruby​​,但如下面的屏幕截图所示,我总是遇到上述相同的 TypeError 问题。

http://i.imgur.com/1AQSEe9.jpg

最佳答案

首先,总的来说,我推荐rbenvrvm用于维护您的 ruby 和相关 gem 。我发现 rbenv 更易于使用,而且侵入性更小,在背后工作的痛苦也更少。

其次,与 ShiningRay 的评论相反,能够维护和使用 Ruby 沙箱是一个巨大的胜利。有时您会想在没有

的情况下尝试不同的 ruby 和/或 gem 版本

如果你想安装 rbenv,最简单的方法是通过 Homebrew .如果您安装 Homebrew,请以本地安装方式进行(不要使用 sudo 来安装它)。

要安装 Hombrew,只需在提示符下执行以下命令:

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

在安装 rbenv 之前,您需要删除现有的 - 但显然没有功能的 - rvm 安装。参见 How to remove rvm (ruby version manager from my system?了解如何有效地做到这一点。

我相信您必须通过 sudo 运行 rvm implode 才能为您完成这项工作。

一旦您以本地用户身份安装了 Homebrew,然后使用它安装 rbenv,如 rbenv Homebrew on Mac OS X section 中所述.

重要 不要以 root 身份运行这些命令!不要使用须藤。就像安装上面的自制软件一样,只需在本地安装 rbenv。

除了 rbenv 和 ruby​​-build,我还会安装以下 rbenv 扩展:

注意 为了有效,在安装之前,rbenv-bundler 要求你有 bundler安装。

现在您已经完成了所有这些,您可以开始安装您需要安装的 ruby 和 gem 了。我会创建一个 gemset,与您要使用的 ruby​​ 相关联,然后将您需要使用的各种 gem 安装到其中。

关于ruby - 无法安装 gem 或 RVM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14742835/

相关文章:

ruby -/usr/bin/jekyll : No such file or directory

ruby-on-rails - 如何完全删除 ruby​​gems 和 rails 等

已安装 Mysql2 gem 但不是必需的

ruby-on-rails - Rails 4 Devise 重新激活 "soft deleted"帐户

ruby - Rack 并发 - rack.multithread、async.callback 或两者兼而有之?

ruby-on-rails - 安装 Heroku 的 Taps gem

segmentation-fault - Ruby Digest::SHA512.hexdigest 在 Yosemite 中引发段错误并退出

ruby - 填充稀疏数组

ruby - 如何在 Ruby 中获得非插值 bash 转义?

ruby - 我如何修复 charlock_holmes gem 以便它可以在 opensuse Tumbleweed 上运行?