Error installing mysql gem

linux, ruby-on-rails

Solution

This is because of unavailability of some of development dependencies in local.

install the following

sudo apt-get install mysql-dev

then install the mysql gem with

gem install mysql

Problem

I am using linux machine. I successfully installed ruby and create a simple application with sqlite database. It's also works well. Now i try to create an application with mysql, when i install mysql gem it shows following error. ``` [bathakarai@Project1-CO Rails]$ gem install mysql /home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/bin/gem:4: warning: Insecure world writable dir /home/bathakarai in PATH, mode 040777 Building native extensions. This could take a while... ERROR: Error installing mysql: ERROR: Failed to build gem native extension. /home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/bin/ruby extconf.rb extconf.rb:12: warning: Insecure world writable dir /home/bathakarai in PATH, mode 040777 checking for mysql_ssl_set()... *** 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=/home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/bin/ruby --with-mysql-config --without-mysql-config /home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/mkmf.rb:368:in `try_do': The complier failed to generate an executable file. (RuntimeError) You have to install development tools first. from /home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/mkmf.rb:435:in `try_link0' from /home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/mkmf.rb:440:in `try_link' from /home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/mkmf.rb:552:in `try_func' from /home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/mkmf.rb:797:in `block in have_func' from /home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/mkmf.rb:693:in `block in checking_for' from /home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/mkmf.rb:280:in `block (2 levels) in postpone' from /home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/mkmf.rb:254:in `open' from /home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/mkmf.rb:280:in `block in postpone' from /home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/mkmf.rb:254:in `open' from /home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/mkmf.rb:276:in `postpone' from /home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/mkmf.rb:692:in `checking_for' from /home/bathakarai/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/mkmf.rb:796:in `have_func' from extconf.rb:45:in `<main>' Gem files will remain installed in /home/bathakarai/.rvm/gems/ruby-1.9.2-p320/gems/mysql-2.9.1 for inspection. Results logged to /home/bathakarai/.rvm/gems/ruby-1.9.2-p320/gems/mysql-2.9.1/ext/mysql_api/gem_make.out ``` Please help me where the problem is

Original source

Related problems