2

奇怪的是我可以用这个命令安装mysql2: $ 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"'结果如下:

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...

但是当我运行时bundle install(显然我需要安装很多 gem),安装 mysql2 失败,所以bundle install停在那里,这真的让我发疯......有人可以帮忙吗?非常感谢!以下是结果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.
4

4 回答 4

8

在我的 ubuntu 机器上,必须先运行apt-get install libmysqld-dev,然后gem install mysql2......它就像一个魅力:)

于 2012-11-04T23:28:44.673 回答
2

尝试从捆绑包外部安装 mysql,如果可行,请从 Gemfile 中删除 mysql

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

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

apt-get install libmysqld-dev
于 2011-11-23T13:05:45.143 回答
0

您尝试安装的 mysql2 gem 版本在 Windows 上存在问题。

请安装mysql2 gem,不注明版本:

gem install mysql2
于 2011-11-23T13:21:30.643 回答
0

工作正常,请下载版本mysql-connector-c-6.1.5-win32,解压到文件夹,试试这个。

对我来说效果很好。

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

于 2014-07-24T20:50:19.213 回答