Невозможно установить гем rmagick в Lion: гем не может найти ruby.h - PullRequest
1 голос
/ 02 октября 2011

У меня чистая установка Mac OS X Lion, и я установил Инструменты разработчика. Я пытаюсь установить некоторые рубиновые гемы, а те, которые требуют собственных расширений, не собираются.

sudo gem install rmagick

Например, не будет строить. Я получаю эту ошибку:

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

    /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb
mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/ruby.h

Похоже, что заголовочный файл ruby.h перемещен в Lion, но я не знаю, как указать на него драгоценные камни ruby.

Я также обновил сам rubygems с помощью

sudo gem update --system

Но проблема сохраняется. Идеи?

1 Ответ

3 голосов
/ 02 октября 2011

Во-первых, если вы все еще используете sudo gem, вам, вероятно, следует переключиться на RVM, который управляет множеством рубинов и наборов гемов, все в вашем домашнем каталоге, так что нет проблем с разрешениями, и чисто переключается между ними.

RVM: http://rvm.beginrescueend.com

Во-вторых, даже если вы говорите, что «установили Инструменты разработчика», возможно, вы не получили XCode и все библиотеки. В наши дни XCode для Lion доступен в Mac App Store - к счастью, бесплатно, хотя в течение нескольких месяцев он стоил $ 4,99, и, к сожалению, совместимые с Leopard и Snow Leopard версии XCode не на Mac App Store.

XCode: http://itunes.apple.com/us/app/xcode/id448457090?mt=12

В-третьих, rmagick зависит от ImageMagick. Самый простой способ добиться этого в наши дни - через HomeBrew (у MacPorts был свой день, но сейчас все готовятся).

HomeBrew: http://mxcl.github.com/homebrew/

После всего этого должно сработать следующее (и сейчас оно работает у меня на моем ноутбуке Lion):

brew install imagemagick
gem install rmagick
...