所以,正如标题所暗示的那样,我试图安装ruby 2.1.2,尽管我还试图安装其他版本,但我也遇到了同样的错误。我正在运行OSX 10.9.2。
我试过了:
通过brew install gcc47
安装更新的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
思想?
答案 0 :(得分:4)
我能够使用:
构建它CONFIGURE_OPTS="--disable-dtrace" rbenv install 2.1.2
基本上这是wicz在问题评论中建议的内容。
KurtPreston的解决方案对我不起作用。也使用OS X 10.9。
答案 1 :(得分:2)
我能够通过以下方式在自己的环境中工作:
brew remove gcc47
答案 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的类似错误。