aaron
aaron

Reputation: 2056

Error installing mysql2 with windows

It's strange the I can install mysql2 with this command: $ gem install mysql2 --platform=ruby -- '--with-mysql-lib="c:\Program Files\MySQL\MySQL Server 5.5\lib" --with-mysql-include="c:\Program Files\MySQL\MySQL Server 5.5\include"' Following is the results:

Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
Successfully installed mysql2-0.3.10
1 gem installed
Installing ri documentation for mysql2-0.3.10...
Installing RDoc documentation for mysql2-0.3.10...

But when I'm running bundle install (apperently I have a lot of gems needs to install), it is failed to install mysql2, so bundle install stopped there, that really drives me crazy... anyone could help? a tons of thanks! Below is the result from bundle install:

Installing mysql2 (0.3.8) with native extensions
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension
.

        c:/Ruby192/bin/ruby.exe extconf.rb
checking for rb_thread_blocking_region()... yes
checking for rb_wait_for_single_fd()... no
checking for main() in -llibmysql... 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
        --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=c:/Ruby192/bin/ruby
        --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-libmysqllib
        --without-libmysqllib


Gem files will remain installed in G:/Desktop/20090319-/Rails Examples/ClockingI
T/vendor/bundle/ruby/1.9.1/gems/mysql2-0.3.8 for inspection.
Results logged to G:/Desktop/20090319-/Rails Examples/ClockingIT/vendor/bundle/r
uby/1.9.1/gems/mysql2-0.3.8/ext/mysql2/gem_make.out
An error occured while installing mysql2 (0.3.8), and Bundler cannot continue.
Make sure that `gem install mysql2 -v '0.3.8'` succeeds before bundling.

Upvotes: 3

Views: 3565

Answers (4)

user3874700
user3874700

Reputation:

Works fines, please download the version mysql-connector-c-6.1.5-win32, unzip on the folder, and try this.

Works well for me.

gem install mysql2 --no-ri --no-rdoc --platform=ruby -- --with-mysql-include=C:\mysql-connector\mysql-connector-c-6.1.5-win32\include --with-mysql-lib=C:\mysql-connector\mysql-connector-c-6.1.5-win32\lib

Upvotes: 0

Xander
Xander

Reputation: 1005

On my ubuntu machine, had to run apt-get install libmysqld-dev first, then gem install mysql2 ... it worked like a charm :)

Upvotes: 8

Mithun Sasidharan
Mithun Sasidharan

Reputation: 20940

The version of mysql2 gem you're trying to install have issues on Windows.

Please install mysql2 gem without indicating the version:

gem install mysql2

Upvotes: 0

Mithun Sasidharan
Mithun Sasidharan

Reputation: 20940

Try this installing mysql from outside the bundle and if it works remove mysql from Gemfile

 sudo gem install mysql --no-rdoc --no-ri -- 

--with-mysql-config=/usr/local/mysql/bin/mysql_config

Also

apt-get install libmysqld-dev

Upvotes: 2

Related Questions