17

我在全新安装的 Mountain Lion 上安装 Ruby 1.8.7 时遇到了很多麻烦。我在 Stack Overflow 上环顾四周,没有看到任何专门解决这个问题的东西,希望有人以前可能遇到过这个问题。

我正在使用可以通过 Xcode 下载的命令行工具

我通过 RVM 和 HomeBrew 安装 Ruby 1.9.3 没有任何问题。当我尝试安装 1.8.7 时,我在尝试编译后收到以下消息:

我首先运行了命令

rvm install 1.8.7

这给了我这个错误

The provided compiler '/usr/bin/gcc' is LLVM based, it is not yet fully supported by ruby and gems, please read `rvm requirements`.

挖了一点后,我尝试了

rvm install 1.8.7 --with-gcc=clang

Error running 'make ', please read /Users/paulzaich/.rvm/log/ruby-1.8.7-p370/make.log
There has been an error while running make. Halting the installation.
Ruby 'ruby-1.8.7-p370' was built using clang - but it's not (fully) supported, expect errors.
Please be aware that you just installed a ruby that requires        2 patches just to be compiled on up to date linux system.
This may have known and unaccounted for security vulnerabilities.
Please consider upgrading to Ruby 1.9.3-194 which will have all of the latest security patches.

在这一点上,我进行了更多搜索,发现需要编译我自己的 readline。RVM 不在 Snow Leopard 上安装 Ruby 1.9.2:'错误运行'make'

不幸的是,这似乎破坏了我的整个 rvm 安装,包括 1.9.3。我尝试重新安装 1.9.3 并得到与 1.8.7 相同的错误。此时我完全删除了 RVM 并重新安装。再次安装 1.9.3 没有问题。

我还尝试根据Mountain Lion 发布的 RVM 问题更新所有版本的 rvm 。那里也没有运气。

更新:我还尝试使用推荐安装 gcc-4.2 的 REE 1.8.7演练。不幸的是没有运气。

更新 2:我参考 rvm 要求并安装了以下软件包

brew update
brew tap homebrew/dupes 
brew install autoconf automake apple-gcc42 
rvm pkg install openssl

到现在为止还挺好。然后我引用了这篇关于需要引用 GCC 编译器的帖子。我确定引用的链接可能不正确,因为我使用的是自制软件?我在我的地窖文件夹中找到了编译器并使用了以下命令

CC=/usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 rvm install 1.8.7

没运气。与以前相同的错误消息。

4

3 回答 3

48

我刚刚想通了!请在 SO 上参考这个问题

rvm 无法再在 Mac OS X Mountain Lion 上安装 1.8.7-p352

rvm reinstall 1.8.7 --without-tcl --without-tk

或者,如果您有 Homebrew,请尝试此安装顺序。

brew install tcl-tk

rvm reinstall 1.8.7
于 2012-09-18T12:14:07.993 回答
4

只是为了跟进保罗的帖子。我正在运行 OSX 10.8.2,安装了 1.9.3 没有问题,但 1.8.7-p370 也失败了。我对 gcc-4.2 进行了符号链接:

sudo ln -s /usr/local/bin/gcc-4.2 /usr/bin/gcc-4.2

...成功运行:

brew install tcl

...但是 tk失败了

brewk install tk

如果你在同一个地方,这个命令就可以了:

CC=/usr/local/bin/gcc-4.2 rvm reinstall 1.8.7 --without-tk
于 2012-10-05T06:55:39.287 回答
1

最新的 Xcode 仅提供clang- 不是 GNU gcc,您需要安装gcc-4.2才能正确编译 Ruby 1.8.7,以下命令将显示可用选项:

rvm requirements

目前只有 ruby​​ 1.9.3-p125 及更高版本对 的支持有限clang,但这是有限的支持,仍然可以发现错误。

于 2012-09-18T11:01:32.597 回答