Ошибка установки mysql2: не удалось собрать собственное расширение gem - PullRequest
463 голосов
/ 31 августа 2010

У меня возникают проблемы при установке mysql2 gem для Rails. Когда я пытаюсь установить его, запустив bundle install или gem install mysql2, выдается следующая ошибка:

Ошибка установки mysql2: ОШИБКА: не удалось создать собственное расширение gem.

Как я могу это исправить и успешно установить mysql2?

Ответы [ 26 ]

0 голосов
/ 30 мая 2011

Если ошибка по-прежнему возникает, следуйте инструкциям установки mysql2 gem на Rails 3 на -

http://rorguide.blogspot.com/2011/03/installing-mysql2-gem-on-ruby-192-and.html

, где большинство пользователей смогли установить gem mysql2.

0 голосов
/ 13 декабря 2011

После того, как вы исправите ошибки mysql-dev, вам может потребоваться удалить неверную установку mysql2. Посмотрите внимательно на сообщения после установки $ bundle. Вам может понадобиться

rm -rf vendor/cache/
rm -rf ./Zentest

Это удалит неправильную установку mysql2, так что окончательная установка $ bundle может создать хорошую.

0 голосов
/ 29 ноября 2014

Для тех, кто использует Windows 7 и 64-битный MySQL

Если вы хотите использовать 64-битный MySQL, вы должны следовать инструкциям здесь (также здесь ).

0 голосов
/ 01 октября 2014

Я просто хотел добавить этот ответ специально для пользователей Mac .

Мой сервер работал отлично, пока я не обновил свой xcode.Во время запуска моего сервера rails ошибка выглядела так:

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

    /Users/user/.rvm/rubies/ruby-1.9.3-p448/bin/ruby extconf.rb --with-mysql-
    checking for rb_thread_blocking_region()... /Users/user/.rvm/rubies/ruby-1.9.3-  
    p448/lib/ruby/1.9.1/mkmf.rb:381:in `try_do': The compiler failed to generate an    
    executable file. (RuntimeError)

И было предложено установить gem mysql2 в конце сообщения об ошибке.Поэтому, когда я попытался установить его, я получил ошибку, как указано выше в этом вопросе.Ошибка, которую я получил, выглядит следующим образом:

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

Так что, как и предлагалось в этом посте, я попытался «brew install mysql», и это означало, что версия mysql уже установлена.Но перед тем, как было написано

Warning: You have not agreed to the Xcode license.
Builds will fail! Agree to the license by opening Xcode.app or running:
xcodebuild -license

, было предупреждение, затем я попробовал это sudo xcodebuild -license и в конце набрал "согласиться".Вы должны быть пользователем root, чтобы согласиться с лицензией.

После этого я снова попытался установить пакет, а затем все работает как обычно.[Даже из-за этого обновления xcode у меня тоже были проблемы с моей башней.]

0 голосов
/ 19 марта 2014

Вы получаете эту проблему, потому что вы не установили MySql. Перед установкой mysql2 gem. Установите MySQL. После этого будет установлен gem mysql2.

0 голосов
/ 12 февраля 2013

Получил «Сначала нужно установить инструменты разработки».ошибка при попытке установить mysql2 gem после обновления до Mac OS X Mountain Lion .Видимо, при выполнении этого обновления удаляются компиляторы командной строки.

Исправление:

  • Я удалил очень старую версию Xcode (запустил скрипт удаления в / Developer / Library).Затем удалил каталог / Developer.
  • Пошел в AppStore и скачал Xcode.
  • Запустил Xcode и зашел в Настройки -> Загрузки, а также установил инструменты командной строки.
...