Ошибка при установке огурца (с участием корнишона) - PullRequest
0 голосов
/ 02 декабря 2011

Я пытаюсь настроить огурец на рельсы. Я включил это в свой Gemfile и запустил установку пакета.

  gem 'cucumber-rails'
  gem 'database_cleaner'

Я получил эту ошибку. Что мне делать?

ERROR:  Error installing gherkin:
    ERROR: Failed to build gem native extension.

        /Users/[my_user_name]/.rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb
checking for main() in -lc... *** 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.

1 Ответ

3 голосов
/ 21 марта 2012

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

Проблема, похоже, связана с OS X Lion, GCC, clang и т. Д.(см. https://github.com/carlhuda/bundler/issues/1590 и https://github.com/carlhuda/bundler/issues/1600). Поскольку проблема с компиляцией ruby ​​кажется проблемой, я решил переустановить (а также обновить) ruby.

Вот что решило эту проблемудля меня:

  • Я использую инструменты командной строки для пакета Xcode.
  • Кроме текущей версии rbenv и ruby-build (обе установлены через homebrew)
  • rbenv install 1.9.3-p125 не удалось (см. https://github.com/sstephenson/ruby-build/issues/129 и https://github.com/sstephenson/ruby-build/issues/130)
  • удалить строку require_gcc для 1.9.3-p125 (если установлена ​​с помощью homebrew, вы найдете файл в /usr/local/Cellar/ruby-build/20120216/share/ruby-build/1.9.3-p125)
  • наконец-то успешно установил 1.9.3-p125 с env CC=/usr/bin/gcc rbenv install 1.9.3-p125

Сложно, но теперь я могу устанавливать гемы с нативными расширениями.

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

Обновление: Кстати. Можно продолжать использовать ruby-1.9.2-p290, все, что вам нужно сделать, это переустановить его.

  • Сначала "удалить" старый ruby-1.9.2-p290: rm -rf .rbenv/versions/1.9.2-p290
  • Затем удалить строку require_gcc для 1.9.2-p290
  • Наконец, установите с env CC=/usr/bin/gcc rbenv install 1.9.2-p290
...