2011-03-22 8 views
1

Я пробовал следующую команду в терминале (OSX 10.6.6) и в итоге получил ошибку. Кто-нибудь знает, как это решить?Не удается установить json с gem

 
sudo gem install json 

Building native extensions. This could take a while... 
ERROR: Error installing json: 
    ERROR: Failed to build gem native extension. 

     /usr/local/bin/ruby extconf.rb 
checking for ruby/re.h... *** extconf.rb failed *** 
Could not create Makefile due to some reason, probably lack of 
necessary libraries and/or headers. Check the mkmf.log file for more 
details. You may need configuration options. 

Provided configuration options: 
    --with-opt-dir 
    --without-opt-dir 
    --with-opt-include 
    --without-opt-include=${opt-dir}/include 
    --with-opt-lib 
    --without-opt-lib=${opt-dir}/lib 
    --with-make-prog 
    --without-make-prog 
    --srcdir=. 
    --curdir 
    --ruby=/usr/local/bin/ruby 
/usr/local/lib/ruby/1.9.1/mkmf.rb:368:in `try_do': The complier failed to generate an executable file. (RuntimeError) 
You have to install development tools first. 
    from /usr/local/lib/ruby/1.9.1/mkmf.rb:452:in `try_cpp' 
    from /usr/local/lib/ruby/1.9.1/mkmf.rb:834:in `block in have_header' 
    from /usr/local/lib/ruby/1.9.1/mkmf.rb:693:in `block in checking_for' 
    from /usr/local/lib/ruby/1.9.1/mkmf.rb:280:in `block (2 levels) in postpone' 
    from /usr/local/lib/ruby/1.9.1/mkmf.rb:254:in `open' 
    from /usr/local/lib/ruby/1.9.1/mkmf.rb:280:in `block in postpone' 
    from /usr/local/lib/ruby/1.9.1/mkmf.rb:254:in `open' 
    from /usr/local/lib/ruby/1.9.1/mkmf.rb:276:in `postpone' 
    from /usr/local/lib/ruby/1.9.1/mkmf.rb:692:in `checking_for' 
    from /usr/local/lib/ruby/1.9.1/mkmf.rb:833:in `have_header' 
    from extconf.rb:17:in `' 


Gem files will remain installed in /usr/local/lib/ruby/gems/1.9.1/gems/json-1.5.1 for inspection. 
Results logged to /usr/local/lib/ruby/gems/1.9.1/gems/json-1.5.1/ext/json/ext/generator/gem_make.out 

ответ

0

Вам необходимо будет установить XCode. Он доступен на AppStore

Если установлено XCode и вы все еще получаете эту ошибку, может быть, вы должны попробовать использовать RVM

+0

привет, спасибо за ответ. У меня уже установлен XCode (в комплекте с установочным компакт-диском для установки снегового леопарда). – katsuya

+0

Вы установили ruby ​​1.9.1 с помощью macports? – Shiv

+0

Нет, я использовал rvm. Это может быть проблема? – katsuya

0

Причины вы получаете эту ошибку потому, что JSON камень включает C расширение/C++ которые должны быть скомпилированы на вашем компьютере до их запуска.

Просто установка XCode не исправит его, вам нужно специально установить инструменты командной строки XCode. Это компилятор/линкер набор инструменты, включая C компилятор C/C++, делают и т.д.

Там есть возможность установить их в меню внутри XCode GUI, видят эту нить для деталей:

Xcode 4.4 and later install Command Line Tools

0

You должен быть в состоянии получить необходимые инструменты, установленные при запуске:

> xcode-select --install 
Смежные вопросы