Playing around with the partitions on my mac yesterday, i accidently deleted the efi partition (dumb of me, i know), but I figured it was about time for a reload, so i just sucked it up and wiped the mac clean.
Going through and installing all the stuff i needed for development, i ran into a problem installing the native mysql bindings for ruby.
[host-192-168-254-149:~] pjdavis% sudo gem install mysqlBulk updating Gem source index for: http://gems.rubyforge.org/Building native extensions. This could take a while…ERROR: Error installing mysql:ERROR: Failed to build gem native extension./opt/local/bin/ruby extconf.rb install mysqlchecking for mysql_query() in -lmysqlclient… nochecking for main() in -lm… yeschecking for mysql_query() in -lmysqlclient… nochecking for main() in -lz… yeschecking for mysql_query() in -lmysqlclient… nochecking for main() in -lsocket… nochecking for mysql_query() in -lmysqlclient… nochecking for main() in -lnsl… nochecking for mysql_query() in -lmysqlclient… no*** extconf.rb failed ***Could not create Makefile due to some reason, probably lack ofnecessary libraries and/or headers. Check the mkmf.log file for moredetails. You may need configuration options.Provided configuration options:–with-opt-dir–without-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=/opt/local/bin/ruby–with-mysql-config–without-mysql-config–with-mysql-dir–without-mysql-dir–with-mysql-include–without-mysql-include=${mysql-dir}/include–with-mysql-lib–without-mysql-lib=${mysql-dir}/lib–with-mysqlclientlib–without-mysqlclientlib–with-mlib–without-mlib–with-mysqlclientlib–without-mysqlclientlib–with-zlib–without-zlib–with-mysqlclientlib–without-mysqlclientlib–with-socketlib–without-socketlib–with-mysqlclientlib–without-mysqlclientlib–with-nsllib–without-nsllib–with-mysqlclientlib–without-mysqlclientlibGem files will remain installed in /opt/local/lib/ruby/gems/1.8/gems/mysql-2.7 for inspection.Results logged to /opt/local/lib/ruby/gems/1.8/gems/mysql-2.7/gem_make.out
I had installed mysql with macports, and that is what was causing the problem. Turns out gem can’t find everything it needs to compile the mysql bindings. Instead of just
sudo gem install mysql -- \ --with-mysql-include=/opt/local/include/mysql5/mysql/ \ --with-mysql-lib=/opt/local/lib/mysql5/mysql/ \ --with-mysql-config=/opt/local/bin/mysql_config5
if you installed mysql through macports or porticus.
Hope this helps everyone
Update: accoring a comment on this blog Bryanl (who I believe is smarticus, he just didn’t bother to fill out his blogger profile) says that all you really need is the config part. So you may only need to do
sudo gem install mysql -- --with-mysql-config=/opt/local/bin/mysql_config5
Add your comment below, or trackback from your own site.
Subscribe to these comments.
Be nice. Keep it clean. Stay on topic. No spam.
You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>