为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

慕桂英3389331 2019-11-05 10:34:35
我无法fakes3在El Capitan Beta 5上安装和运行gem。我试过了:sudo gem install fakes3ERROR:  While executing gem ... (Errno::EPERM)    Operation not permitted - /usr/bin/fakes3然后我尝试用cocoapods的方式来做。它适用于cocoapods,但不适用于假货3。mkdir -p $HOME/Software/rubyexport GEM_HOME=$HOME/Software/rubygem install cocoapods[...]1 gem installedgem install fakes3ERROR:  While executing gem ... (Gem::FilePermissionError)    You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory.
查看完整描述

3 回答

?
12345678_0001

TA贡献1802条经验 获得超5个赞

 @theTinMan和其他Ruby开发人员经常指出sudo在安装gems时不要使用它们,并指向RVM之类的东西。在进行Ruby开发时,这是绝对正确的。继续使用。


然而,我们许多人只是想一些二进制碰巧被分配作为宝石(例如fakes3,cocoapods,xcpretty...)。我绝对不想管理一个单独的红宝石。这是您更快的选择:


选项1:继续使用sudo

sudo如果您希望在全球范围内安装这些工具,则使用可能会很好。


问题是这些二进制文件已安装到中/usr/bin,这是El Capitan以来禁止使用的。但是,您可以将它们安装到其中/usr/local/bin。那是Homebrew安装东西的地方,所以它可能已经存在。


sudo gem install fakes3 -n/usr/local/bin

Gems将被安装到/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开发人员文档。)


查看完整回答
反对 回复 2019-11-05
?
侃侃无极

TA贡献2051条经验 获得超10个赞

就我而言,我必须使用Brew重新安装Ruby 。这似乎已经解决了问题,因为我可以再次安装gems。


brew install ruby

此后,您需要注销并重新登录,或者以图形方式或仅重新启动终端。


查看完整回答
反对 回复 2019-11-05
?
尚方宝剑之说

TA贡献1788条经验 获得超4个赞

这是因为OS X“ El Capitan”具有新的安全功能。尝试添加--user-install而不是使用sudo:


$ gem install *** --user-install

例如,如果要安装fake3,请使用:


$ gem install fake3 --user-install


查看完整回答
反对 回复 2019-11-05
  • 3 回答
  • 0 关注
  • 644 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信