Ruby where打开了一个xcode实例,然后再次关闭它,然后成功地运行了同一个命令,之后该命令对他们有效。 我试图打开xcode,但收到一条消息,提示安装的xcode版本与El Capitan不兼容。 因此,我随后从应用商店更新了xcode,重新运行了以下命令,这一次成功运行:

Ruby where打开了一个xcode实例,然后再次关闭它,然后成功地运行了同一个命令,之后该命令对他们有效。 我试图打开xcode,但收到一条消息,提示安装的xcode版本与El Capitan不兼容。 因此,我随后从应用商店更新了xcode,重新运行了以下命令,这一次成功运行:,ruby,macos,rubygems,Ruby,Macos,Rubygems,$sudo gem安装-n/usr/local/bin compass 然后我就可以运行$compass init了 现在,我的所有gem都在工作,可以继续构建一些可爱的sass工具:)如果您尝试安装的gem需要xml库,请尝试以下方法: sudo gem install -n /usr/local/bin <gem_name> -- --use-system-libraries --with-xml2-include=/usr/include/libxml2 --with-xml

$sudo gem安装-n/usr/local/bin compass

然后我就可以运行$compass init了


现在,我的所有gem都在工作,可以继续构建一些可爱的sass工具:)

如果您尝试安装的gem需要xml库,请尝试以下方法:

sudo gem install -n /usr/local/bin  <gem_name> -- --use-system-libraries --with-xml2-include=/usr/include/libxml2 --with-xml2-lib=/usr/lib/
要确保已安装libxml2和libxslt,可以执行以下操作:

brew install libxml2 libxslt
brew install libiconv
然后检查以确保已安装xcode命令行工具:

xcode-select --install 
应返回此错误:

xcode-select: error: command line tools are already installed, use "Software Update" to install updates

我必须
rm-rf./vendor
然后再次运行
bundle安装

正如前面所说的,问题来自自“El Capitan”以来Mac OSX的安全功能

使用默认系统Ruby,安装过程发生在用户不可用的
/Library/Ruby/Gems/2.0.0
目录中,并给出错误信息

您可以使用命令查看您的Ruby环境参数

$ gem env
有一个安装目录和一个用户安装目录。要使用用户安装目录而不是默认安装目录,您可以使用
--user install
参数,就像使用
sudo
一样,这绝不是推荐的方法

$ gem install myGemName --user-install
在此过程中,不应再出现任何配股问题。然后将gems安装在用户目录中:
~/.gem/Ruby/2.0.0/bin

但是为了使安装的gems可用,这个目录应该在您的路径中。根据,您可以将以下行添加到
~/.bash\u配置文件
~/.bashrc

if which ruby >/dev/null && which gem >/dev/null; then
    PATH="$(ruby -rubygems -e 'puts Gem.user_dir')/bin:$PATH"
fi

然后关闭并重新加载终端或重新加载
.bash\u配置文件
.bashrc
~/.bash\u配置文件

您可能有两个选项:

  • 如果已安装ruby和rails,可以首先尝试运行以下命令:
    rvm fix-permissions 
    
  • 您可以完全卸载ruby,然后重新安装到您的
    ~
    目录,也就是您的主目录中
  • 如果您使用的是自制软件,则命令为:

    brew uninstall ruby
    
    rvm remove
    
    对于不使用自制的rails卸载,命令为:

    brew uninstall ruby
    
    rvm remove
    
    这将通过运行以下命令重新安装最新的ruby:

    curl -L https://get.rvm.io | bash -s stable --rails<br>
    
    然后:

    gem install rails
    
    最后您会收到一些错误消息,说您必须添加一些其他捆绑包…
    安装时,只需确保您在home
    ~
    目录中,这样权限就不会成为问题,但以防万一

    我又跑了:

    rvm fix-permissions
    
    以及:

    这告诉我我必须下载纱线,我没有为它保存输出。基本上,如果提示与我的操作系统有关,我会按照提示的要求去做


    -D

    不要使用
    sudo
    安装Ruby或更改gems。而是使用或来安装和管理Ruby。阅读并遵循各自网站上的说明。而且,在任何一种情况下,在安装后,除非您了解正在发生的变化以及为什么要这样做,否则不要使用
    sudo
    。非常感谢!我一直在努力解决brew和ruby的新版本,但仍然无法通过/usr/bin问题。运行
    gem install
    时指定所需的路径解决了问题。
    .gemrc
    应该有
    gem:-n/usr/local/bin
    (在-n之后需要一个空格)。@PaulSchreiber嗯,我已经在没有空格的情况下使用了五个月了。:)你确定吗?选项#2加1,如果你只想要那些没有单独Ruby的二进制文件,这是一个可行且安全的选择。我们的主目录是添加gem的理想场所,对路径进行快速调整可使其易于访问。我不能推荐选项1,因为有人最终会覆盖一个gem并破坏他们的系统Ruby或使用它的Apple内置代码,然后他们会问另外一个问题,关于如何修复它。这是一个很好的答案,但可能已经过时了。在Sierra上,我需要的选项是——install dir/usr/local/binDon不要更改系统Ruby gems的所有权。当Mac OS尝试更新任何东西时,这可能会导致问题。对我来说效果很好!我想它消除了捆绑ruby安装中的任何奇怪之处。。。在我看来,这是最好的解决方案。在我的机器上,你可以知道哪个ruby运行时使用了“``哪个-一个ruby````来给出:````$which-一个ruby/usr/local/bin/ruby/usr/local/bin/ruby``至于为什么/usr/local/bin在路径上出现了两次——看起来像是
    brew安装ruby
    把它放在那里,即使它已经在那里了。大概/usr/local中的ruby被配置为将其gem安装在一个不需要root访问的位置(实际上这很有道理)。您需要注销并重新登录(通过终端),否则
    gem安装仍将失败。对我来说工作正常。我把公认的答案和这个结合起来。谢谢你们两位,你们不必注销再重新登录。只需运行
    rehash
    ,确保shell意识到在
    $PATH
    前面有一个新的
    ruby
    。即使在shell会话中还没有运行ruby的情况下,也不需要这样做。如果您运行此命令,它会弄乱MySQL数据的权限,则需要重新设置权限。这是怎么做的。对非常感谢你!在使用brew方法30分钟后,关闭终端等终于在10.10.5版上实现了此解决方案,但仍不确定brew方法为何不起作用。请澄清。哪个ruby post brew安装/usr/bin/RubyWhow现在问题是返回gem install Red地毯-v'3.3.4'--用户安装抛出错误警告:您的路径中没有/Users/user\u name/.gem/ruby/2.0.0/bin,gem可执行文件将不会运行。早些时候我并没有得到这个错误,这帮助我最终解决了这个问题
    sudo gem install -n /usr/local/bin cocoapods
    
    rvm implode
    \curl -sSL https://get.rvm.io | bash -s stable --ruby
    rvm reload
    
    $ gem install *** --user-install
    
    $ gem install fake3 --user-install
    
    sudo chown -R $(whoami):admin /usr/local
    
    /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb 
    
    sudo gem install -n /usr/local/bin  <gem_name> -- --use-system-libraries --with-xml2-include=/usr/include/libxml2 --with-xml2-lib=/usr/lib/
    
    sudo gem install -n /usr/local/bin  nokogiri -- --use-system-libraries --with-xml2-include=/usr/include/libxml2 --with-xml2-lib=/usr/lib/
    
    brew install libxml2 libxslt
    brew install libiconv
    
    xcode-select --install 
    
    xcode-select: error: command line tools are already installed, use "Software Update" to install updates
    
    $ gem env
    
    $ gem install myGemName --user-install
    
    if which ruby >/dev/null && which gem >/dev/null; then
        PATH="$(ruby -rubygems -e 'puts Gem.user_dir')/bin:$PATH"
    fi
    
    rvm fix-permissions 
    
    brew uninstall ruby
    
    rvm remove
    
    curl -L https://get.rvm.io | bash -s stable --rails<br>
    
    rvm install "ruby-2.6.3"
    
    gem install rails
    
    rvm fix-permissions
    
    rvm debug