BUG Bus Error ruby​​ 1.8.7

我在使用Xcode 4.2 GM(新MacBook)在Lion 10.7.1上使用RVM编译Ruby 1.8.7后出现错误。

它编译得很好但是当我尝试安装任何gem我得到以下内容:

gem install bundler /Users/me/.rvm/rubies/ruby-1.8.7-p352/lib/ruby/1.8/timeout.rb:60: [BUG] Bus Error ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-darwin11.1.0] Abort trap: 6 

更新 :最后我希望安装Xcode 4.2,安装了Ruby 1.8.7,1.9.x的RVM,并且一切正常。

由于我不得不解析其中的几个答案,以便使用XCode 4.2,我想我会把它们放在一起:

  1. 安装Xcode 4.2
  2. 从https://github.com/kennethreitz/osx-gcc-installer安装gcc独立编译器(取代Xcode)
  3. export CC=gcc-4.2添加到〜/ .bash_profile或等效(不要忘记重新加载)
  4. 运行rvm implode" then re-install rvm http://beginrescueend.com/

在这一点上,我能够安装ruby-1.8.7(和ruby-1.9.2),并实际上让我的gem安装。

所以nuking RVM( rvm implode )并重新安装没有任何区别。 我最终安装了Xcode 4.2,然后安装了GCC编译器,之后覆盖了Xcode编译器。

以下是谷歌搜索这些的步骤。

  1. 安装Xcode 4.2.x.

  2. 从https://github.com/kennethreitz/osx-gcc-installer安装GCC独立编译器

    注意:Xcode 4.3 beta最近发布。 我正在测试这是否解决了编译问题。

多 篇文章表明,Ruby不喜欢使用LLVM进行编译。 权宜之计的措施是彻底删除RVM安装 – 链接的文章说明了 – 然后用普通的GCC重新编译Ruby。 真正的解决方案必须来自Apple / LLVM或Ruby团队。

我解决了这个问题

  1. 安装Xcode 4.2.x,
  2. export CC=gcc添加到〜/ .bash_profile中,
  3. 重新加载环境( source ~/.bash_profile ),
  4. 执行rvm install 1.9.3
  5. 执行rvm ruby-1.9.3-rc1
  6. 执行gem update --system ,最后
  7. 执行gem install bundler

问题出在Xcode 4.2.x版本上。 如果您运行rvm get head您将看到此消息“请勿使用Xcode Version 4.2.x.它目前无法构建多个rubies和gem ……”。

我没有ruby v1.8.7的解决方案。

我希望它有所帮助。

您可以在此处下载查找独立的GCC安装程序说明: https : //github.com/kennethreitz/osx-gcc-installer

这为您提供了基于非llvm的gcc安装,而无需使用Xcode。

然后,您可以使用该命令

  export CC=/usr/bin/gcc-4.2 

这允许您拥有最新的X代码用于OSX目的,并且仍然有一个快乐的gcc版本的ruby。

我需要在这台机器上使用Xcode,所以独立的gcc并没有为我做这件事。

在其他海报中,我遵循了RVM更新发布说明末尾的建议。

注意,我不需要删除RVM。 我成功删除了Xcode 4.2.1(完全),并重新安装了Xcode 4.1,然后执行CC=/usr/bin/gcc-4.2 rvm install 1.8.7技巧。 在我的情况下,我将export CC="/usr/bin/gcc-4.2"放在我的个人资料中以节省一些打字,同时还设置了各种gem。

这也适用于Ruby Enterprise Edition(ree-1.8.7-2011.03),它也失败了。

rvm安装后文档说:

** Lion用户: 不要将Xcode版本4.2.x用于OS X Lion。 它目前无法构建几个ruby和gem,以及几个Homebrew和Macports包。 Xcode版本4.1(4B110)的工作原理。 您可以在以下url找到适用于OS X Lion的Xcode 4.1: https : //developer.apple.com/downloads/download.action?path = Develorator_Tools / xcode_4.1_for_lion / xcode_4.1_for_lion.dmg

这对我有用。