Error installing mysql2 gem ( windows 8 )

2019-07-17 08:24发布

问题:

i'm currently trying to install the mysql2 gem on a windows 8 platform. I have installed the mysql_connector and used the following code below. But still seem to be getting the same error. What steps should I take to address this issue.

  C:\Users\Samuel>gem install mysql2
  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:/Ruby200-x64/bin/ruby.exe extconf.rb
 checking for ruby/thread.h... yes
 checking for rb_thread_call_without_gvl() in ruby/thread.h... yes
 checking for rb_thread_blocking_region()... yes
 checking for rb_wait_for_single_fd()... yes
 checking for rb_hash_dup()... yes
 checking for rb_intern3()... yes
 checking for mysql_query() in -lmysqlclient... no
 checking for main() in -lm... yes
 checking for mysql_query() in -lmysqlclient... no
 checking for main() in -lz... no
 checking for mysql_query() in -lmysqlclient... no
 checking for main() in -lsocket... no
 checking for mysql_query() in -lmysqlclient... no
 checking for main() in -lnsl... no
 checking for mysql_query() in -lmysqlclient... no
 checking for main() in -lmygcc... no
 checking for mysql_query() in -lmysqlclient... 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:/Ruby200-x64/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}/
    --with-mysql-config
    --without-mysql-config
    --with-mysql-dir
    --without-mysql-dir
    --with-mysql-include
    --without-mysql-include=${mysql-dir}/include
    --with-mysql-lib
    --without-mysql-lib=${mysql-dir}/
    --with-mysqlclientlib
    --without-mysqlclientlib
    --with-mlib
    --without-mlib
    --with-mysqlclientlib
    --without-mysqlclientlib
    --with-zlib
    --without-zlib
    --with-mysqlclientlib
    --without-mysqlclientlib
    --with-socketlib
    --without-socketlib
    --with-mysqlclientlib
    --without-mysqlclientlib
    --with-nsllib
    --without-nsllib
    --with-mysqlclientlib
    --without-mysqlclientlib
    --with-mygcclib
    --without-mygcclib
    --with-mysqlclientlib
    --without-mysqlclientlib

 Gem files will remain installed in C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/mysql
 2-0.3.14 for inspection.
 Results logged to C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/mysql2-0.3.14/ext/mysq
 l2/gem_make.out

回答1:

Download the 32-bit Zip Archive of connector from here. Then copy it at the root of your C drive for ease of access so that your connector folder path will be something like this

C:\mysql-connector-c-6.1.3-win32\

Now copy this line of code to your cmd and execute (remember to change the connector version number with your one)

gem install mysql2 --platform=ruby -- '--with-mysql-dir="C:/mysql-connector-c-6.1.3-win32/"'

After trying for a long time I successfully installed mysql2 gem in both of my 32 and 64 bit windows 7 in this way. Cheers!



回答2:

I have been using windows 7 and have faced the similar error and ended up in using mysql gem instead of mysql2. And apart from this, many errors kept rising. That made me to shift to linux, and after that no such problems poked me.

I had made a ferocious attempt to include mysql2 fem using windows for a whole day, but the results were not fruitful. If you are really keen to solve, go through these links (link1 and link2). Maybe you will find something useful.



回答3:

This is how I Installed my mysql2 gem on windows 8.

c:\DevKit>gem install mysql2 --platform=ruby -- '--with-mysql-dir="C:\Ruby193\my
sql-connector-c-6.1.3-win32/"'