gem install mysql fail
Solution 1
Solved the problem by uninstalling 32-bit MySQL thats on my system.. and installed 5.1.56 64-bit.
Hope this is helpful to others who's having the same problem as me..
Solution 2
The program 'mysql_config' is currently not installed. You can install it by typing:
$ sudo apt-get install libmysqlclient-dev
$ bundle install
bundle show [mysql2] # To find the location.
Solution 3
Try this:
gem install mysql -- --with-mysql-config=/usr/local/mysql-5.1.56-osx10.6-x86/bin/mysql_config
(Note the extra dashes)
If that doesn't work, I highly recommend going with the homebrew installation mentioned above of MySQL. You can read about a soup-to-nuts installation here: Uninstall Ruby on Rails on Mac OS X 10.6
Solution 4
I had the same issue in Cent OS, but got it resolved by installing mysql-devel
yum install mysql mysql-server mysql-devel
Solution 5
Based on this answer I ended up editing my /usr/local/Cellar/mysql/5.6.12/bin/mysql_config
file to remove -Wno-null-conversion -Wno-unused-private-field
, which is what the error the mkmf.log was complaining about.
My setup is Mac OSX with Ruby installed using RVM and MySQL installed using homebrew.
Kyle
Updated on March 15, 2021Comments
-
Kyle about 3 years
I've followed the instructions on http://geryit.com/blog/2011/01/installing-mysql-with-rails-on-mac-os-x-snow-leopard/ , including the installation of ruby via macport.
Whenever I execute gem install mysql , I'll get the following error
bash-3.2# gem install mysql 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 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: --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=/opt/local/bin/ruby --with-mysql-config --without-mysql-config Gem files will remain installed in /opt/local/lib/ruby/gems/1.8/gems/mysql-2.8.1 for inspection. Results logged to /opt/local/lib/ruby/gems/1.8/gems/mysql-2.8.1/ext/mysql_api/gem_make.out
How can I resolve this issue ? I've installed the 32-bit mysql using the package file (.pkg) and also, I'm extremely new to ruby...
Update 4/26/11 5:11pm EST Installed RVM and updated ruby to 1.9.2 Also I have looked through the links posted on the comments. I did
locate mysql_config
and results were/usr/local/mysql-5.1.56-osx10.6-x86/bin/mysql_config /usr/local/mysql-5.1.56-osx10.6-x86/man/man1/mysql_config.1
Hence, I tried
gem install mysql - -with-mysql-config=/usr/local/mysql-5.1.56-osx10.6-x86/bin/mysql_config
but it still doesn't work... I did get new error information however../Users/kyle/.rvm/rubies/ruby-1.9.2-p180/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 /Users/kyle/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/mkmf.rb:435:in `try_link0' from /Users/kyle/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/mkmf.rb:440:in `try_link' from /Users/kyle/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/mkmf.rb:552:in `try_func' from /Users/kyle/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/mkmf.rb:797:in `block in have_func' from /Users/kyle/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/mkmf.rb:693:in `block in checking_for' from /Users/kyle/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/mkmf.rb:280:in `block (2 levels) in postpone' from /Users/kyle/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/mkmf.rb:254:in `open' from /Users/kyle/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/mkmf.rb:280:in `block in postpone' from /Users/kyle/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/mkmf.rb:254:in `open' from /Users/kyle/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/mkmf.rb:276:in `postpone' from /Users/kyle/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/mkmf.rb:692:in `checking_for' from /Users/kyle/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/mkmf.rb:796:in `have_func' from extconf.rb:50:in `<main>' Gem files will remain installed in /Users/kyle/.rvm/rubies/ruby-1.9.2-p180/bin/th-mysql-config=/usr/local/mysql-5.1.56-osx10.6-x86/bin/mysql_config/gems/mysql-2.8.1 for inspection.
Really wish to thank those who commented... and really appreciate if more help can be given..... been trying to get the darn mysql installed for 2 days...
-
Kyle about 13 yearsI have installed homebrew. Could you go about showing me how to install mysql gem with that ? I'm reading the wiki on Gems, Eggs and Perl Modules. It doesn't explain much tho...
-
Danny over 12 yearsa tip for mac users: use finder and do 'go to folder' to find your mysql installation. once you've found the config file, drag the mysql_config icon from finder into terminal to have the path in your terminal window
-
James McMahon almost 11 yearsFor homebrew 0.9.4 path is
/usr/local/Cellar/mysql/<version>/bin
, but it still isn't working for me... -
Daniel Lang over 10 yearsThank you so much! After messing around for 3 hours this is the only thing that helped!
-
sent1nel over 10 yearsSame worked for me. I'm also using Ruby (1.9.3) through RVM and MySQL through brew.
-
Andrew Arrow over 7 yearsI AGREE GOLD! also for rails I added:
bundle config build.mysql2 --with-mysql-config=/usr/local/Cellar/mysql55/5.5.49/bin/mysql_config