我无法在 El Capitan Beta 5 上安装和运行 fakes3
gem。
我试过:
sudo gem install fakes3
ERROR: While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/fakes3
然后我尝试用 cocoapods 的方式来做。它适用于 cocoapods 但不适用于 fakes3。
mkdir -p $HOME/Software/ruby
export GEM_HOME=$HOME/Software/ruby
gem install cocoapods
[...]
1 gem installed
gem install fakes3
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory.
最佳答案
免责声明:@theTinMan 和其他 Ruby 开发人员经常指出在安装 gems 时不要使用 sudo
并指向类似 RVM 的东西.在进行 Ruby 开发时,这是绝对正确的。继续使用它。
然而,我们中的许多人只想要一些恰好作为 gem 分发的二进制文件(例如 fakes3
、cocoapods
、xcpretty
……) .我绝对不想费心管理一个单独的 ruby 。以下是您更快的选择:
选项 1:继续使用 sudo
如果您希望全局安装这些工具,使用 sudo
可能没问题。
问题是这些二进制文件安装到 /usr/bin
中,即 off-limits自 El Capitan 以来。但是,您可以将它们安装到 /usr/local/bin
中。那就是Homebrew安装它的东西,所以它probably已经存在。
sudo gem install fakes3 -n/usr/local/bin
Gems 将被安装到 /usr/local/bin
中,如果它在他们的 PATH 中,您系统上的每个用户都可以使用它们.
选项 2:安装在您的主目录中(不使用 sudo)
以下将在 ~/.gem
中安装 gems,并将二进制文件放入 ~/bin
(然后你应该将其添加到你的 PATH
).
gem install fakes3 --user-install -n~/bin
设为默认值
无论哪种方式,您都可以将这些参数添加到您的 ~/.gemrc
中,这样您就不必记住它们:
gem: -n/usr/local/bin
即echo "gem: -n/usr/local/bin">> ~/.gemrc
或
gem: --user-install -n~/bin
即echo "gem: --user-install -n~/bin">> ~/.gemrc
(提示:您还可以输入 --no-document
以跳过生成 Ruby 开发人员文档。)
关于ruby - 无法在 OS X "El Capitan"上安装 gems,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34870234/