运行'sudo gem list --local‘和'gem list --local’会得到不同的结果。我的gem路径设置为我的主文件夹,并且只包含来自'gem list --local‘的gem。
将gem安装在我的计算机上的不同目录可能并不好,所以我应该设置不同的gem路径吗?我应该在安装某些东西时始终使用sudo吗?
my ~/.profile
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
export PATH="/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:$PATH"~/.bash_profile为空。
发布于 2010-01-23 02:10:48
与所有其他帖子相反,我建议在安装gem时不要使用sudo。
相反,我建议您安装并开始幸福的生活,拥有便携的gem home和不同版本的Ruby,它们都生活在一个屋檐下。
对于外行,来自the documentation
ruby RVM是一个命令行工具,它允许我们轻松地安装、管理和处理多个
环境和gem集。
使用sudo安装gem比安装gem install更糟糕的原因是,它以root用户身份为所有用户安装gem。如果你是唯一使用这台机器的人,这可能没问题,但如果你不是,这可能会导致怪异。
如果您决定要扔掉所有的gem并重新开始,那么以非root用户的身份执行此操作将更容易、更安全。
如果你决定要使用RVM,那么使用sudo会带来各种各样的奇怪之处,因为你通过RVM安装的每个Ruby版本都有自己的GEM_HOME。
此外,如果您可以使您的开发环境尽可能地接近您的生产环境,并且在生产环境中,您很可能会以非root用户的身份安装gem,那就更好了。
发布于 2013-08-18 09:00:06
您还可以使用以下命令在本地环境中安装gem(没有sudo)
gem install --user-install <gemname>我建议这样做,这样即使它是单用户计算机,也不会影响系统级配置。
您可以通过使用gem environment查看gempaths来检查gem的去向。在我的例子中是"~/.gem/ruby/1.8“。
如果需要将本地安装中的一些二进制文件添加到路径中,可以向bashrc添加一些内容,如下所示:
if which ruby >/dev/null && which gem >/dev/null; then
PATH="$(ruby -r rubygems -e 'puts Gem.user_dir')/bin:$PATH"
fi(来自http://guides.rubygems.org/faqs/#user-install)
发布于 2015-11-11 20:58:02
更好的做法是,将--user-install放在~/.gemrc文件中,这样就不必每次都键入它
gem: --user-installhttps://stackoverflow.com/questions/2119064
复制相似问题