试图在Mac上设置Ruby Rails

时间:2015-08-11 21:45:21

标签: ruby-on-rails macos

尝试使用rbenv和Homebrew在mac上设置rails。

目前在尝试'gem install rails'时收到以下消息:

错误:执行gem时...(Gem :: FilePermissionError)     您没有/Library/Ruby/Gems/2.0.0目录的写权限。 username-mbp:projects username $ gem install rails

任何想法??

3 个答案:

答案 0 :(得分:2)

如果您使用的是rbenv,则使用sudo来安装gems。 rbenv非常有用地将您的gem安装在您的主目录下,允许您为每个已安装的Ruby版本使用不同的gem。当你改变Ruby的版本时,你会非常感激。

要查看当前版本的Ruby,请使用rbenv local。对我来说这打印:

2.2.2

要查看您的系统上rbenv知道的所有Ruby版本:

rbenv versions

rbenv将版本说明符存储在名为.ruby-version的文件中。这允许您为不同的项目使用不同版本的Ruby,每个版本都有自己的一组宝石。

当您尝试安装rails并获取Gem :: FilePermissionError时,这意味着rbenv未处于活动状态,或者您故意安装到“系统”Ruby中。这个本身没有任何问题,但你没有利用rbenv。

我建议使用rbenv local再次安装Rails,以确保将gems添加到正确的路径。

时你会知道这是有效的
gem env gemdir

产生类似的东西:

/Users/username/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0

有关详细信息,请参阅https://github.com/sstephenson/rbenv#installation

答案 1 :(得分:0)

使用sudo

sudo gem install rails

本指南对我有很大帮助:Setup Ruby On Rails on Mac OS X 10.10 Yosemite

答案 2 :(得分:0)

这可能意味着您在某些时候使用了sudo,这意味着您运行的命令允许您(作为允许的用户以超级用户或其他用户身份执行命令)请参阅此处:{{3 }}。

您能否粘贴用于安装rbenv,ruby,gem,brew等的命令?另请粘贴brew doctor的输出以查看是否为Homebrew正确配置了环境。另外,如果安装了rbenv,请粘贴OSX版本和rbenv versions

在OSX上在rails上安装ruby的步骤是:

  1. 安装Homebrew: ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"`` (as seen here: http://brew.sh/)。运行brew doctorbrew update以查看是否一切正常。
  2. 安装ruby:OS X附带Ruby安装(Mavericks / Yosemite甚至获得2.0.0版,以前只有1.8.7版)。
  3. 安装rbenv:可以通过GitHub Checkout或Brew完成。你可能应该使用brew。运行brew install rbenv ruby-build(这也将安装ruby-build - http://linux.about.com/od/commands/l/blcmdl8_sudo.htm)。您也可以使用此命令brew install rbenv ruby-build rbenv-gem-rehash。然后echo 'eval "$(rbenv init -)"' >> ~/.bash_profile(启用垫片和自动完成)。您也可以运行它:echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile。关闭终端并再次打开。安装首选版本的ruby(如果需要):rbenv install 2.0.0-p353
  4. 安装Bundler:gem install bundler
  5. 安装SQLite:gem install sqlite3
  6. 安装Rails:gem install rails
  7. 因此,您遇到的错误是由于权限(您可以在此处了解它们:https://github.com/sstephenson/ruby-build#readme-)。很多人建议使用sudochownhttp://www.tutorialspoint.com/unix/unix-file-permission.htm)解决问题。我不推荐这样做,因为它与系统配置混淆。你最好跑:

    rbenv install 2.1.2 
    rbenv global 2.1.2
    gem update --system
    

    当我像一年前一样运行此错误时,我所做的就是卸载所有内容并重新开始...但是,可能会花费太长时间。

    这些链接可能对您有所帮助: http://www.cyberciti.biz/faq/how-to-use-chmod-and-chown-command/ruby for macruby rbenvrbenv githuberubies and gems