尝试在OSX BUILD FAILED上使用rbenv安装ruby 2.1.2

时间:2014-05-28 18:10:18

标签: ruby macos rbenv

所以,正如标题所暗示的那样,我试图安装ruby 2.1.2,尽管我还试图安装其他版本,但我也遇到了同样的错误。我正在运行OSX 10.9.2。

我试过了:

通过brew install gcc47

安装新的gcc编译器

安装更新的OSX命令行工具

卸载rbenv并重试

重新启动机器

以下是我得到的总和:

rbenv install 2.1.2
Downloading ruby-2.1.2.tar.gz...
-> http://dqw8nmjcqpjn7.cloudfront.net/f22a6447811a81f3c808d1c2a5ce3b5f5f0955c68c9a749182feb4 25589e6635
Installing ruby-2.1.2...

BUILD FAILED

Inspect or clean up the working tree at /var/folders/6c/h_82199n12515_hd3rcp2x5w0000gn/T/ruby-build.20140528115901.38728
Results logged to /var/folders/6c/h_82199n12515_hd3rcp2x5w0000gn/T/ruby-build.20140528115901.38728.log

Last 10 log lines:
gcc version 4.2.1 (Apple Inc. build 5666) (dot 3)
compiling miniinit.c
compiling miniprelude.c
translating probes probes.d
compiling bignum.c
compiling class.c
dtrace: failed to compile script probes.d: Preprocessor not found
make: *** [probes.h] Error 1
make: *** Waiting for unfinished jobs....
compiling compar.c

思想?

Gist of verbose output

4 个答案:

答案 0 :(得分:4)

我能够使用:

构建它
CONFIGURE_OPTS="--disable-dtrace" rbenv install 2.1.2

基本上这是wicz在问题评论中建议的内容。

KurtPreston的解决方案对我不起作用。也使用OS X 10.9。

答案 1 :(得分:2)

我能够通过以下方式在自己的环境中工作:

  1. 删除Homebrew安装的gcc:brew remove gcc47
  2. https://developer.apple.com/downloads
  3. 的XCode下载页面重新安装XCode 命令行工具

答案 2 :(得分:2)

我试图安装2.0并遇到同样的错误。但是现在CONFIGURE_OPTIONS覆盖似乎不再适用于rvm,所以我需要使用rvm install --reconfigure -C --disable-dtrace ruby-2.0.0-p594来构建它。这是第一个关闭错误消息的Google结果(“dtrace:编译脚本探测失败.d:未找到预处理器”)所以我想我应该将其添加为rvm用户的当前解决方案。在OSX Mavericks上运行。

答案 3 :(得分:1)

我无法在我的机器上重现这一点,抱歉。作为参考,这是我的dtrace版本,如果它应该与错误有关:

dtrace -V
  dtrace: Sun D 1.7

您可以尝试检查XCode和命令行工具更新。不需要GCC 4,您可以使用XCode附带的编译器:

brew uninstall gcc4

最后,更新所有内容并重试:

brew update
brew upgrade rbenv ruby-build
rbenv uninstall 2.1.2
rbenv install 2.1.2

如果这还不行:有些人报告说机器的简单重启解决了dprobe / dtrace的类似错误。