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 [sourcecode language=sh]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[/sourcecode] if you installed mysql through macports or porticus.
–with-mysql-include=/opt/local/include/mysql5/mysql/ \
–with-mysql-lib=/opt/local/lib/mysql5/mysql/ \
–with-mysql-config=/opt/local/bin/mysql_config5[/sourcecode] 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 [sourcecode language=sh]sudo gem install mysql — –with-mysql-config=/opt/local/bin/mysql_config5[/sourcecode]