OS-X, Rails: «Не удалось собрать собственное расширение gem» - PullRequest
33 голосов
/ 05 декабря 2011

Я застрял, пытаясь установить рельсы на моем Mac. У меня OS X 10.6.8, и я подтвердил, что у меня Ruby версии 1.8.7

Я запустил sudo gem update и sudo gem update --system, чтобы получить последние версии программного обеспечения.

Однако, когда я запускаю sudo gem install rails, я получаю эту ошибку:

ERROR:  Error installing rails:
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


Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/json-1.6.3 for inspection.
Results logged to /Library/Ruby/Gems/1.8/gems/json-1.6.3/ext/json/ext/parser/gem_make.out

Ответы [ 9 ]

47 голосов
/ 01 сентября 2012

Если у вас XCode 4 или новее, вам нужно будет открыть его и перейти в «Настройки» -> «Загрузки» -> «Компоненты» и установить инструменты командной строки, так как они не установлены по умолчанию.Не удалось установить Rails, пока это не произошло.

35 голосов
/ 20 января 2015

Я использую OSX 10.10.Вы можете скачать из командной строки

xcode-select --install
8 голосов
/ 05 декабря 2011

Не уверен, что нужно для компиляции, но OSX не может скомпилировать какие-либо нативные расширения ruby, если не установлены инструменты разработчика Apple. На 10.7 Lion вы можете скачать его бесплатно из магазина приложений или загрузить здесь за 10.6: http://developer.apple.com/xcode/index.php

Это также может быть на ваших установочных дисках OSX, хотя, вероятно, гораздо более устаревшие.

5 голосов
/ 01 ноября 2016

Просто продолжение ...

возможно, вы работаете на Mac, и rails не может найти подходящий компилятор для заголовков C.

просто установите xcode из магазина приложений / homebrewили перейдите в терминал ...

$ xcode-select --install

завершите установку и согласитесь с лицензированием и т. д., затем ...

$ sudo gem install rails

4 голосов
/ 05 декабря 2011

Вы установили инструменты разработчика OS X? Вам нужно будет сделать это, чтобы иметь возможность создавать собственные расширения

3 голосов
/ 29 июля 2015

Есть две возможные причины сбоя:

  1. ОСНОВНАЯ ПРИЧИНА: Отсутствуют инструменты командной строки Xcode

Проверка установки инструментов командной строки Xcode вручную : Проверьте наличие "/usr/include/iconv.h" (если отсутствует => отсутствует или неправильно установлен Xcode CLT)

Установка Xcode CLT : Попробуйте запустить xcode-select --install на терминале и следуйте инструкциям. Если это не удается, откройте Xcode.app, выберите в меню «Xcode» - «Открыть инструмент разработчика» - «Дополнительные инструменты разработчика», чтобы открыть сайт разработчика, скачать установщик для вашей версии ОС и запустить его.

  1. ВТОРАЯ ПРИЧИНА (если 1. не удается): проблемы с версией Попробуйте обновить версию ruby, используя rbenv.

Надеюсь, это поможет!

1 голос
/ 02 июля 2015

Инструменты командной строки не решили эту проблему для меня. Я обновил установку ruby ​​через rbenv до версии 2.2.0, сделал глобальную установку ruby ​​по умолчанию, и эта проблема была исправлена.

1 голос
/ 11 апреля 2013

Попробуйте установить Ruby через RVM.Я решил таким образом

Как установить ruby ​​на Ubuntu с помощью rvm

0 голосов
/ 09 декабря 2012

Просто была похожая проблема.Я могу подтвердить, что установка инструментов командной строки исправляет это.

...