2016-11-06 130 views
0

我运行brew updatebrew upgrade rbenv ruby-build。 FYI:我昨天更新了xcode到版本8.1。rbenv无法安装红宝石2.2.5和2.3.1

我检查了可用版本,rbenv install -l

然后,我试图安装ruby2.2.5 rbenv install 2.2.5,然后我得到以下错误。

我试过2.3.1但我得到了同样的错误。我该如何解决这个问题?

Downloading ruby-2.2.5.tar.bz2... 
-> https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.5.tar.bz2 
Installing ruby-2.2.5... 

BUILD FAILED (OS X 10.11.6 using ruby-build 20160602) 

Inspect or clean up the working tree at /var/folders/2p/49l6q0gs6qzgtxbg4h1st_5h0000gq/T/ruby-build.20161106122840.51330 
Results logged to /var/folders/2p/49l6q0gs6qzgtxbg4h1st_5h0000gq/T/ruby-build.20161106122840.51330.log 

Last 10 log lines: 
    Referenced from: /private/var/folders/2p/49l6q0gs6qzgtxbg4h1st_5h0000gq/T/ruby-build.20161106122840.51330/ruby-2.2.5/./miniruby (which was built for Mac OS X 10.12) 
    Expected in: /usr/lib/libSystem.B.dylib 

dyld: Symbol not found: _clock_gettime 
    Referenced from: /private/var/folders/2p/49l6q0gs6qzgtxbg4h1st_5h0000gq/T/ruby-build.20161106122840.51330/ruby-2.2.5/./miniruby (which was built for Mac OS X 10.12) 
    Expected in: /usr/lib/libSystem.B.dylib 

make: *** [encdb.h] Trace/BPT trap: 5 
make: *** Waiting for unfinished jobs.... 
make: *** [.rbconfig.time] Trace/BPT trap: 5 
+0

使用与您相同的命令,我没有错误。我正在使用'Apple LLVM 8.0.0版(clang-800.0.42.1)'。 cc -v的输出是什么? –

+0

@Ortomania:我的输出:Lokni Apple LLVM 8.0.0版(clang-800.0.42.1) 对象:x86_64-apple-darwin15.6.0 线程模型:posix InstalledDir:/Applications/Xcode.app/Contents/Developer/工具链/ XcodeDefault.xctoolchain/usr/bin – shin

+0

您是否手动安装了一些系统库? –

回答

0

我试着升级rbenv。

brew upgrade rbenv 

然后我收到警告。

Warning: You have Xcode 8 installed without the CLT; 
this causes certain builds to fail on OS X El Capitan (10.11). 
Please install the CLT via: 
    sudo xcode-select --install 
Error: rbenv 1.0.0 already installed 

所以我安装了xcode-select

sudo xcode-select --install 

然后我试着升级rbenv,但rbenv 1.0.0已经安装。

brew upgrade rbenv 
Error: rbenv 1.0.0 already installed 

所以我尝试安装2.3.1和2.2.5

rbenv install 2.3.1 
... 
rbenv install 2.2.5 

它是成功的。

➜ ~ rbenv versions 
    system 
    1.9.3-p327 
* 2.2.2 (set by /Users/sokada/.rbenv/version) 
    2.2.5 
    2.3.1 

我还需要安装捆绑软件,因为我使用捆绑软件来解决这个问题。

gem install bundler -v 1.13.6 // newest as of this writing 
bundler -v 
bundler install // finally I could use it. 
0

首先,我已经卸载了所有:

brew uninstall rbenv ruby-build 

因为老粘红宝石建造安装的,并且我已经被迫像这样:

brew uninstall --force ruby-build 

我可以看到当我输入ruby -v时,是rbenv的一个旧调用。所以我删除$HOME/.bash_profile所有rbenv引用,然后与重新装入:

source $HOME/.bash_profile 

现在我只看到我的老默认Mac系统红宝石版本:

ruby -v  # ruby 2.0.0p481 (2014-05-08 revision 45883) 
which ruby # /usr/bin/ruby 

¡好!现在是时候重新安装它们,然后列出可用的Ruby版本:

brew install rbenv 

rbenv install -l 

现在我可以看到更多的Ruby选项来安装...

2.2.4,2.2.5,2.2.6 ,2.2.7,2.2.8,2.2.9,2.3.0,2.3.1,2.3.2,2.3.3,2.3.4,2.3.5,2.3.6,2.4.0,2.4.1,2.4 .2,2.4.3,2.5。0

我会选择其中之一,并使其成为全球:

rbenv install 2.5.0 
rbenv global 2.5.0 

我如果你没有已经$HOME/.bash_profile rbenv配置行,运行:

rbenv init 

.. 。并将结果行添加到您的$HOME/.bash_profile