Zaktualizowałem wszystkie pakiety, które zainstalowałem z Homebrew. MySQL dostali 5.6.12 (od 5.5.27 lub tak):Klejnot mysql2 nie kompiluje się z MySQL 5.6.12 na OS X z Homebrew
$ mysql --version
mysql Ver 14.14 Distrib 5.6.12, for osx10.8 (x86_64) using EditLine wrapper
a teraz gem mysql2 nie kompiluje już:
$ gem install mysql2
Building native extensions. This could take a while...
ERROR: Error installing mysql2:
ERROR: Failed to build gem native extension.
/Users/pupeno/.rvm/rubies/ruby-1.9.3-p429-perf/bin/ruby extconf.rb
checking for rb_thread_blocking_region()... yes
checking for rb_wait_for_single_fd()... yes
checking for mysql.h... no
checking for mysql/mysql.h... no
-----
mysql.h is missing. please check your installation of mysql and try again.
-----
*** 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.
Provided configuration options:
--with-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/Users/pupeno/.rvm/rubies/ruby-1.9.3-p429-perf/bin/ruby
--with-mysql-config
--without-mysql-config
Plik mysql.h
jest obecny w /usr/local/Cellar/mysql/5.6.12/include/mysql.h
. Jakieś pomysły, co się dzieje?
Plik mysql.h
nie pojawia się w /usr/local
ponieważ dowiązanie wydaje się głębiej niż powinno:
$ ls -la /usr/local/include/mysql
lrwxr-xr-x 1 pupeno admin 36 21 Jun 15:18 /usr/local/include/[email protected] -> ../Cellar/mysql/5.6.12/include/mysql
zamiast
/usr/local/Cellar/mysql/5.6.12/include
Mimo, że ja ręcznie ustalony dowiązania i kompilacja wciąż nie powiodła się. Więc utknąłem.
Czy masz zainstalowaną bibliotekę programisty mysql? –
@HunterMcMillen Myślałem, że wszystkie pliki rozwojowe zostały zainstalowane z twoim pakietem mysql brew. czego mi brakuje? – Pablo
Homebrew + rbenv zawsze pracował dla mnie. Czy to może być problem z RVM? Czy też 'mysql.h' jest obecny tam, gdzie myślisz? – tadman