我昨天将Mac OS更新为10.9小牛队。我当前的Ruby版本显示为
ruby 2.0.0p247(2013-06-27修订版41674)[universal.x86_64-darwin13]
我在我的机器上安装了Rails,当我尝试安装gem时,我收到以下消息:
Fetching: eventmachine-1.0.3.gem (100%) ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory.
我正在我的主目录中尝试所有这些。有什么建议吗?
答案 0 :(得分:11)
我不能代表rbenv,但RVM会为您有权访问的bin
预设一个特定于Ruby版本的PATH
,因此您不必使用sudo
(这是你在当前情况下安装宝石的方法,但是非常气馁)。
rbenv同样适用于您的$PATH
,但它使用垫片。
答案 1 :(得分:10)
当我遇到同样的错误时,因为我没有安装Ruby版本管理器,它默认为我的计算机附带的Ruby版本,该版本是root用户。
由于使用sudo
安装gem是一个非常糟糕的主意,我使用Ruby 2.1.2安装了RVM
\curl -sSL https://get.rvm.io | bash -s stable --ruby=2.1.2
然后通过运行
确保它被用作默认值rvm use ruby-2.1.2
RVM使用您的用户权限创建一个存储Ruby和gem的新位置,这样您就不必使用sudo
或获取权限错误。新的宝石位置是:
~/.rvm/gems
然后按原样继续......
gem install ....
答案 2 :(得分:5)
我没有安装RVM。我收到此错误是因为我安装了rbenv但尚未运行rbenv init
。
将命令rbenv init
中的内容插入.bash_profile后,gem install
按预期工作。
我也碰巧首先将rbenv global <ruby-version>
设置为下载的Ruby版本。
答案 3 :(得分:0)
就像在尝试安装RubyGems后浪费一个小时或更长时间后向大家说... rubygems-2.4.5 &#39; sudo&# 39; 让我通过! 这是一种享受......