如何使用rbenv在没有sudo的情况下全局安装gem?

Jor*_*ran 6 ruby gem sudo rbenv

我正在使用rbenv,我正在尝试安装sass但没有成功.

所以,我rbenv通过Homebrew,然后Ruby 2.2(rbenv install 2.2)安装,最后gem install sass,但我无法sass在我的$PATH.

时间紧迫,我sudo gem install sass使用我的系统(Yosemite)默认的Ruby 2.这把所有/Library/Ruby/Gems/2.0.0东西都放进去,事情确实有效,但不是最需要的.

理想情况下,使用rbenv我应该能够安装任何Ruby版本,并在该版本的目录中安装宝石,然后进行符号链接/usrl/local/bin.

任何可能出错的帮助都将非常感激.

Jor*_*ran 10

基本上,问题是我没加rbenv/bin/rbenv$PATH.

export PATH="$HOME/.rbenv/bin:$PATH"
Run Code Online (Sandbox Code Playgroud)

更好的是,将此添加到您.bashrc.bash_profile开始每个会话rbenv.

之后,请确保:

eval "$(rbenv init -)"
Run Code Online (Sandbox Code Playgroud)

为了启用垫片和自动完成.

fishshell

对于那些使用鱼的人,你可以像这样完成同样的事情:

if status --is-interactive
  . (rbenv init - | psub)
end
Run Code Online (Sandbox Code Playgroud)

现在,如果你不喜欢$PATH直接修改并拥有所有权/usr/local/bin,那么一个更好的解决方案是使用符号链接~/.rbenv/bin/rbenv.

 ln -s ~/.rbenv/bin/rbenv /usr/local/bin
Run Code Online (Sandbox Code Playgroud)

红宝石构建

作为最后的警告,请确保安装ruby-build(一个rbenv插件来添加install命令rbenv并能够轻松安装Ruby版本.)

如果您使用自制软件,它就像馅饼一样容易:

brew install ruby-build
Run Code Online (Sandbox Code Playgroud)

  • 要么问题标题错误,要么这个“答案”没有解决问题。 (7认同)