MySQL gem on OSX Leopard 10.5.x

I started to play with Rails 2.3 and ran into a little issue trying to access my database. I guess I shouldn’t have been ignoring all those decodeciation warnings…oops. Naturally, the first thing I did was run “sudo gem install mysql” which threw the following error:

ng$ sudo gem install mysql
Building native extensions.  This could take a while...
ERROR:  Error installing mysql:
  ERROR: Failed to build gem native extension.

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb install mysql
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lm... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lz... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lsocket... no
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lnsl... no
checking for mysql_query() in -lmysqlclient... no

Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/mysql-2.7 for inspection.
Results logged to /Library/Ruby/Gems/1.8/gems/mysql-2.7/gem_make.out

After digging around, I found the following command:

sudo env ARCHFLAGS="-arch i386" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
Building native extensions.  This could take a while...
Successfully installed mysql-2.7
1 gem installed

Looks like it was successful…but wait, let’s check. Pop into IRB:

>> require 'mysql'
LoadError: dlopen(/Library/Ruby/Gems/1.8/gems/mysql-2.7/lib/mysql.bundle, 9): Library not loaded: /usr/local/mysql/lib/mysql/libmysqlclient.15.dylib
  Referenced from: /Library/Ruby/Gems/1.8/gems/mysql-2.7/lib/mysql.bundle
  Reason: image not found - /Library/Ruby/Gems/1.8/gems/mysql-2.7/lib/mysql.bundle
  from /Library/Ruby/Gems/1.8/gems/mysql-2.7/lib/mysql.bundle
  from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `require'
  from (irb):1

Further searching revelaed the solution:

sudo install_name_tool -change /usr/local/mysql/lib/mysql/libmysqlclient.15.dylib /usr/local/mysql/lib/libmysqlclient.15.dylib /Library/Ruby/Gems/1.8/gems/mysql-2.7/lib/mysql.bundle

Tags: , ,

4 comments

  1. Hi Jonathan,

    Are you on a powerpc or intel Mac?

    I'm dealing with a similar problem.

    Thanks for the post.

    Scott Bratcher

  2. pierre Guilbert

    Thanks a lot!!!!

  3. pierre Guilbert

    Thanks a lot!!!!

Leave a comment