我已阅读并尝试了建议的几个,其他的,问题,像我这样的(所有公认的答案),以及几个小时的谷歌搜索,但毫无效果。这使我认为我的问题是计算机上的某个Ruby/RBENV生态系统损坏了,或者是一个可怕的PATH问题。我总是必须sudo安装任何从未安装过的gem,这也令人困惑。
sudo
这是我认为相关的文件和命令的一些输出。如果您需要更多信息,请告诉我:
.zshrc
export PATH="/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin" if which rbenv > /dev/null; then eval "$(rbenv init - zsh)"; fi
ruby-v
ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-darwin13.0]
本地rbenv
2.1.1
Gemfile(我也炸掉了我的gemfile.lock几次)
source 'https://rubygems.org' ruby '2.1.1' gem 'rails', '4.1.4' ... [omitted for brevity]
.ruby版本
回声$ PATH
/[user path]/.rbenv/shims:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
如果有人对我接下来应该尝试的内容有任何想法,而又没有重新格式化计算机,我将不胜感激。
编辑1: 根据Ben Kreeger,尝试从下面的git仓库安装两个选项。type rbenv正确返回的rbenv是一个shell函数,原始消息不断出现。我重新安装了Mavericks,但我的设置仍然无法正常工作。
type rbenv
编辑2: 每当我尝试安装gem时,我都会Gem::FilePermissionError说我无权访问Ruby 2.0.0文件夹(作为系统安装)。要和RBENV一起摆弄更多…
Gem::FilePermissionError
编辑3: 更多调试(下面的所有内容)
当使用RBENV安装Ruby版本时,一直保持错误状态,发现有些人提到了readline问题。
readline
尝试了以下步骤来修复readline:https : //github.com/sstephenson/ruby- build/issues/550#issuecomment-40681557,并收到一条错误消息,指出我的Xcode命令行工具安装错误。
跑去xcode-select --install重新安装它们。
xcode-select --install
rbenv install 2.1.1再次尝试,并得到The Ruby openssl extension was not compiled. Missing the OpenSSL lib?
rbenv install 2.1.1
The Ruby openssl extension was not compiled. Missing the OpenSSL lib?
根据https://coderwall.com/p/n9bnug,我将OpenSSL扩展名与https://coderwall.com/p/n9bnug
https://coderwall.com/p/n9bnug
重置Ruby版本:rbenv local 2.1.1 rbenv global 2.1.1和rbenv rehash
rbenv local 2.1.1
rbenv global 2.1.1
rbenv rehash
一切似乎都表明捆绑程序正在尝试使用我的systemRuby安装(2.0.0-p247),而不是RBENV指定的内容。困惑的地方是丢失的链接。
system
哇,只是哇。
我要做的只是gem install bundler然后rbenv rehash。一切正常。
gem install bundler
最初的错误消息使我发现RBENV或我的Ruby版本存在问题,而实际上它只是依靠旧版本的捆绑程序而已。
为什么我不会收到更多标准this needs bundler version [xxxx]...错误,而不是告诉我我的Ruby版本指定不正确?
this needs bundler version [xxxx]...