Только что обновил до macOS Mojave, переустановил mysql через brew и скачал последнюю версию xcode 9.2. При попытке настроить среду разработки для старого проекта rails сбой пакета при установке gem mysql2. В начале я думал, что это потому, что последняя версия mysql2 не совместима с ruby 1.9, поэтому я попытался:
gem install mysql2 -v '0.3.17'
и я получил:
/ Users / me / .rvm / rubies / ruby-1.9.3-p125 / bin / ruby extconf.rb
проверка для ruby / thread.h ... * extconf.rb завершилась неудачно *
Не удалось создать Makefile по какой-то причине, вероятно, из-за отсутствия
необходимые библиотеки и / или заголовки. Проверьте файл mkmf.log для более
подробности. Вам могут потребоваться параметры конфигурации.
Предоставлены параметры конфигурации:
--with-неавтоматического реж
--with-неавтоматического включают
--without-неавтоматического включают = $ {Блокировщик реж} / включить
--with-неавтоматического Пб
--without-неавтоматического Пб = $ {неавтоматического реж} / Lib
--with-макияж прог
--without-макияж прог
--srcdir =.
--curdir
--ruby = / Users / мне / .rvm / рубины / рубиново-1.9.3-P125 / бен / рубин
/Users/me/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:381:in try_do': The compiler failed to generate an executable file. (RuntimeError)
You have to install development tools first.
from /Users/me/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:506:in
try_cpp '
из /Users/me/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:931:in block in have_header'
from /Users/me/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:790:in
блок в check_for '
из /Users/me/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:284:in block (2 levels) in postpone'
from /Users/me/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:254:in
open '
из /Users/me/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:284:in block in postpone'
from /Users/me/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:254:in
open '
из /Users/me/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:280:in postpone'
from /Users/me/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:789:in
check_for '
из /Users/me/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:930:in have_header'
from extconf.rb:9:in
'
копия из /Users/me/.rvm/gems/ruby-1.9.3-p125@mailcatcher/gems/mysql2-0.2.18/ext/mysql2/mkmf.log:
"/ usr / bin / gcc-4.2 -o conftest -I / Пользователи / me / .rvm / rubies / ruby-1.9.3-p125 / include / ruby-1.9.1 / x86_64-darwin10.8.0 -I /Users/me/.rvm/rubies/ruby-1.9.3-p125/include/ruby-1.9.1/ruby/backward -I / Users / me / .rvm / rubies / ruby-1.9.3-p125 / include /ruby-1.9.1 -I. -I / Users / me / .rvm / usr / include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -O3 -ggdb -Wextra -Wno-unused-параметр -Wno-круглые скобки -Wno-long-long -Wno -missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-Statement -Wshorten-64-to-32 -Понятное-объявление-функции -fno-common -pipe conftest.c -L. -L / Users /me/.rvm/rubies/ruby-1.9.3-p125/lib -L / Users / me / .rvm / usr / lib -L. -L / usr / local / lib -lruby.1.9.1 -lpthread - ldl -lobjc "
проверенная программа была:
/ * начало /
1: #include "ruby.h"
2:
3: int main () {return 0;}
/ конец * /