无法在OS X“ El Capitan”上安装gem

我无法fakes3在El Capitan Beta 5上安装和运行gem。


我试过了:


sudo gem install fakes3

ERROR:  While executing gem ... (Errno::EPERM)

    Operation not permitted - /usr/bin/fakes3

然后我尝试用cocoapods的方式来做。它适用于cocoapods,但不适用于假货3。


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.


慕桂英3389331
浏览 650回答 3
3回答

12345678_0001

 @theTinMan和其他Ruby开发人员经常指出sudo在安装gems时不要使用它们,并指向RVM之类的东西。在进行Ruby开发时,这是绝对正确的。继续使用。然而,我们许多人只是想一些二进制碰巧被分配作为宝石(例如fakes3,cocoapods,xcpretty...)。我绝对不想管理一个单独的红宝石。这是您更快的选择:选项1:继续使用sudosudo如果您希望在全球范围内安装这些工具,则使用可能会很好。问题是这些二进制文件已安装到中/usr/bin,这是El Capitan以来禁止使用的。但是,您可以将它们安装到其中/usr/local/bin。那是Homebrew安装东西的地方,所以它可能已经存在。sudo gem install fakes3 -n/usr/local/binGems将被安装到/usr/local/bin系统中,并且如果系统中的每个用户都在PATH中,则可以使用它们。选项2:安装在主目录中(不使用sudo)以下内容将安装gems ~/.gem并将其中的二进制文件放入~/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开发人员文档。)

侃侃无极

就我而言,我必须使用Brew重新安装Ruby 。这似乎已经解决了问题,因为我可以再次安装gems。brew install ruby此后,您需要注销并重新登录,或者以图形方式或仅重新启动终端。

尚方宝剑之说

这是因为OS X“ El Capitan”具有新的安全功能。尝试添加--user-install而不是使用sudo:$ gem install *** --user-install例如,如果要安装fake3,请使用:$ gem install fake3 --user-install
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Ruby