Reputation: 2056
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
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
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
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
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