Unable to install mysql2 gem on windows 7

I am getting the following error message while installing, let me know
if any one needs some more details. I followed instruction from
"https://github.com/oneclick/rubyinstaller/wiki/Development-Kit".

I am using ruby 1.9.2p136 (2010-12-25) [i386-mingw32].

E:\work_desk\trunk>gem install mysql2 -v 0.2.4
Temporarily enhancing PATH to include DevKit...
Building native extensions. This could take a while...
ERROR: Error installing mysql2:
        ERROR: Failed to build gem native extension.

C:/Ruby192/bin/ruby.exe extconf.rb
checking for rb_thread_blocking_region()... yes
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 C:/Ruby192/lib/ruby/gems/1.9.1/gems/
mysql2-0.
2.4 for inspection.
Results logged to C:/Ruby192/lib/ruby/gems/1.9.1/gems/mysql2-0.2.4/ext/
mysql2/ge
m_make.out

You have to include path to mysql header and library files:

gem install mysql2 -- --with-mysql-include=c:/path/to/mysql/include --
with-mysql-lib=c:/path/to/mysql/lib

I make all the steps of the DEVKIT and this others steps, but my
problem is when you traid to make the 10 step of the link, it show me
the same error. the only diference is that my server is MySQL server
5.5

http://rorguide.blogspot.com/2011/03/installing-mysql2-gem-on-ruby-192-and.html#comment-form

Hi,

Problem solved by changing "c:\Program Files\MySQL\MySQL Server 5.5\lib
\opt" to "c:\Program Files\MySQL\MySQL Server 5.5\lib".
For details, refer to "http://rorguide.blogspot.com/2011/03/installing-
mysql2-gem-on-ruby-192-and.html"

Thanks
Ritesh Kumar

With the suggestion from Ritesh the install works without problems, but
the gem and the libmysql.dll are incompatible.

C:\Programming\test>rake db:create RAILS_ENV=’development’
(in C:/Programming/test)
rake aborted!
Incorrect MySQL client library version! This gem was compiled for 5.5.12
but the
client library is 6.0.0.
C:/Ruby/lib/ruby/gems/1.9.1/gems/mysql2-0.3.2/lib/mysql2.rb:8:in
`require’
C:/Ruby/lib/ruby/gems/1.9.1/gems/mysql2-0.3.2/lib/mysql2.rb:8:in `’

A warning should be sufficient …

It doesn't seem like MySQL archives the older versions of libmysql.dll
(5.5.12).

Any Ideas how to get around this?

Thanks,

Willi

I cannot undelete my previous post, so I post again:

With the suggestion from Ritesh the install works without problems, but
the gem and the libmysql.dll are incompatible.

C:\Programming\test>rake db:create RAILS_ENV=’development’
(in C:/Programming/test)
rake aborted!
Incorrect MySQL client library version! This gem was compiled for 5.5.12
but the
client library is 6.0.0.
C:/Ruby/lib/ruby/gems/1.9.1/gems/mysql2-0.3.2/lib/mysql2.rb:8:in
`require’
C:/Ruby/lib/ruby/gems/1.9.1/gems/mysql2-0.3.2/lib/mysql2.rb:8:in `’

A warning should be sufficient …

It doesn't seem like MySQL archives the older versions of libmysql.dll
(5.5.12).

Any Ideas how to get around this?

Thanks,

Willi

Willi,

This is how I solved this problem:

Copy "libmysql.dll" from <MySql INstallation>/lib to <Ruby

/bin

- Thanks
Adarsh

Thanks to all, this is a good tutorial,

Javier Abaroa.

Ritesh Kumar wrote in post #991677:

Are you using a 64bits MySQL?

If that is the case, you need to read this:

https://github.com/oneclick/rubyinstaller/wiki/Troubleshooting#gems_mix_bits

I recommend than instead of playing with your MySQL installation
download MySQL Connector/C (32bits version), extract it to a folder
without paths and use it as options during gem installation:

gem install mysql2 -- --with-mysql-include=C:/connector/include --with-
mysql-lib=C:/connector/lib

HTH,

Yes, what you need to do is compile the gem instead of using the
binary.

If you have installed the DevKit, you only need to add --platform=ruby
to the gem install command:

gem install mysql2 --platform=ruby -- --with-mysql-include=C:/
connector/include --with-mysql-lib=C:/connector/lib

Instructions here might help if you are still blocked --
http://blog.readypulse.com/2011/12/07/installing-ruby-on-rails-3-1-1-with-mysql-on-windows-7-64-bit/#comment-84