Hi I am unsuccessfully trying to install MySQL Gem on Ubuntu 10.04.

I have tried the following commands:

sudo gem install mysql
sudo gem install mysql -- --with-mysql-config=/usr/bin/mysql_config

I get the following message for each:

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

/usr/bin/ruby1.8 extconf.rb
checking for mysql_ssl_set()... no
checking for rb_str_set_len()... no
checking for rb_thread_start_timer()... no
checking for mysql.h... no
checking for mysql/mysql.h... no
*** 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:

Gem files will remain installed in /usr/lib/ruby/gems/1.8/gems/mysql-2.8.1 for inspection.
Results logged to /usr/lib/ruby/gems/1.8/gems/mysql-2.8.1/ext/mysql_api/gem_make.out

I've read on a lot of forums that installing MySQL client libraries (libmysqlclient-dev) helps fix the above issue, but it does for me.

apt-get install libmysqlclient15-dev

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting libmysqlclient-dev instead of libmysqlclient15-dev
libmysqlclient-dev is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Any help on what else may be the issue would greatly be appreciated.

Thanks, Sharmil

2 Answers 2


You just need to install libmysqlclient-dev

sudo apt-get install libmysqlclient-dev


sudo apt-get install libmysql-ruby

fetch the required gem?

  • +1 its better to use a ruby library from the repository if available. Use gems when the library is not packaged in the repository or if you need a specific version only available as a gem.
    – dv3500ea
    Dec 21, 2010 at 14:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.