无法在Mac OS X 10.8.4上安装json 1.8 gem

我正在尝试在第二台计算机上安装我的rails应用程序。 但是当我运行bundle install我得到了json gem的错误:

 Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. /Users/feuerball/.rvm/rubies/ruby-2.0.0-p195/bin/ruby extconf.rb /Users/feuerball/.rvm/rubies/ruby-2.0.0-p195/bin/ruby: invalid option -D (-h will show valid options) (RuntimeError) Gem files will remain installed in /Users/feuerball/.rvm/gems/ruby-2.0.0-p195/gems/json-1.8.0 for inspection. Results logged to /Users/feuerball/.rvm/gems/ruby-2.0.0-p195/gems/json-1.8.0/ext/json/ext/generator/gem_make.out An error occurred while installing json (1.8.0), and Bundler cannot continue. Make sure that `gem install json -v '1.8.0'` succeeds before bundling. 

计算机使用Xcode 4.6.3和最新的命令行工具运行Mac OS X 10.8.4。

我使用rvm安装了最新的ruby:

 $ rvm -v rvm 1.21.2 (stable) by Wayne E. Seguin , Michal Papis  [https://rvm.io/] $ ruby -v ruby 2.0.0p195 (2013-05-14 revision 40734) [x86_64-darwin12.4.0] $ gem -v 2.0.3 

当我尝试使用gem install json安装json gem时,我得到几乎相同的错误:

 Building native extensions. This could take a while... ERROR: Error installing json: ERROR: Failed to build gem native extension. /Users/feuerball/.rvm/rubies/ruby-2.0.0-p195/bin/ruby extconf.rb /Users/feuerball/.rvm/rubies/ruby-2.0.0-p195/bin/ruby: invalid option -D (-h will show valid options) (RuntimeError) Gem files will remain installed in /Users/feuerball/.rvm/gems/ruby-2.0.0-p195/gems/json-1.8.0 for inspection. Results logged to /Users/feuerball/.rvm/gems/ruby-2.0.0-p195/gems/json-1.8.0/ext/json/ext/generator/gem_make.out 

尝试使用sudo安装不会改变任何东西。

我卸载并重新安装了homebrew,rvm,ruby和命令行工具,但没有任何帮助。

更新

/Users/feuerball/.rvm/gems/ruby-2.0.0-p195/gems/json-1.8.0/ext/json/ext/generato‌​r/gem_make.out

 /Users/feuerball/.rvm/rubies/ruby-2.0.0-p195/bin/ruby extconf.rb /Users/feuerball/.rvm/rubies/ruby-2.0.0-p195/bin/ruby: invalid option -D (-h will show valid options) (RuntimeError) 

GCC版本:

 $ gcc -v Using built-in specs. Target: i686-apple-darwin11 Configured with: /private/var/tmp/llvmgcc42/llvmgcc42-2336.11~182/src/configure --disable-checking --enable-werror --prefix=/Applications/Xcode.app/Contents/Developer/usr/llvm-gcc-4.2 --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-prefix=llvm- --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib --build=i686-apple-darwin11 --enable-llvm=/private/var/tmp/llvmgcc42/llvmgcc42-2336.11~182/dst-llvmCore/Developer/usr/local --program-prefix=i686-apple-darwin11- --host=x86_64-apple-darwin11 --target=i686-apple-darwin11 --with-gxx-include-dir=/usr/include/c++/4.2.1 Thread model: posix gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00) 

更新2

我做了全新的OS X,Xcode,Command Line Tools,Homebrew,rvm和Ruby。 Ruby现在已经打补丁级别247了,该死的问题仍然存在。 多么浪费时间……如果重要的话:rvm和ruby一起安装了json 1.7.7

更新3

似乎我的机器在所有原生扩展上都失败了。 gem install bcrypt-ruby给出了相同的错误消息。

问题是我的主文件夹位于一个单独的卷上,其名称中包含一个空格。 由于空间,名称的第二部分被解释为选项。 卷名称类似于My Data ,因此我得到了消息invalid option -D

我刚刚重命名了这个卷,现在一切安装都很好。

这似乎发生在Json版本1.8.0和1.8.1(Ruby 2.2.3)……我能够毫无问题地升级到1.8.2和1.8.3 ……指定这些版本

 gem 'json', '~> 1.8.2' 

在我的捆绑让我解决了这个问题。

这似乎仍然是一个错误… https://github.com/flori/json/issues/163

只有捆绑造成的。 你能尝试一下gem install json吗? 它可能会解决问题。