2

我正在尝试使用 Sass 和 Compass 安装 Foundation,但很难获得这个,或者通过终端安装的任何 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

4

1 回答 1

1

首先,总的来说,我建议使用rbenv而不是rvm来维护您的红宝石和相关的宝石。我发现 rbenv 更容易使用,而且干扰更少,并且在工作的背后也更少痛苦。

其次,与 ShiningRay 所评论的相反,能够维护和使用 Ruby 沙箱是一个巨大的胜利。有时您会想尝试不同的红宝石和/或宝石版本

如果你想安装 rbenv,最简单的方法是通过Homebrew。如果您安装 Homebrew,请作为本地安装(不要使用 sudo 安装它)。

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

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

在安装 rbenv 之前,您需要删除现有的 - 但显然不起作用 - rvm 安装。请参阅如何从我的系统中删除 rvm(ruby 版本管理器?了解如何有效地执行此操作。

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

以本地用户身份安装 Homebrew 后,使用它来安装 rbenv,如Mac OS X 上的 rbenv Homebrew 部分所述

重要 不要以 root 身份运行这些命令!不要使用 sudo。只需在上面安装 homebrew 时执行 rbenv 的本地安装。

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

注意 要有效,并且在安装它之前,rbenv-bundler 要求您已经安装了bundler

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

于 2013-02-09T01:04:53.443 回答