如何安装Rails MySQL适配器?

时间:2011-01-04 18:32:54

标签: mysql ruby-on-rails

我的问题没有那么多。 gem install mysql不起作用,我没有通过谷歌搜索找到任何东西。

当我尝试gem install mysql2时,这就是我得到的。我现在不知道该怎么做。

jason@buster:~/projects/mcif-rails$ gem install mysql2
Building native extensions.  This could take a while...
ERROR:  Error installing mysql2:
        ERROR: Failed to build gem native extension.

/home/jason/.rvm/rubies/ruby-1.9.2-p136/bin/ruby extconf.rb
checking for rb_thread_blocking_region()... 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... yes
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... yes
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=/home/jason/.rvm/rubies/ruby-1.9.2-p136/bin/ruby
        --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}/lib
        --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 /home/jason/.rvm/gems/ruby-1.9.2-p136/gems/mysql2-0.2.6 for inspection.
Results logged to /home/jason/.rvm/gems/ruby-1.9.2-p136/gems/mysql2-0.2.6/ext/mysql2/gem_make.out

5 个答案:

答案 0 :(得分:16)

看起来你仍然需要安装MySQL的开发库。这些是宝石在您的系统上成功构建所必需的。

[编辑]似乎RoR Wiki已不再可用。但是,Ubuntu已提出their own walkthrough表明:

sudo apt-get install mysql-server mysql-client
sudo apt-get install libmysql-ruby libmysqlclient-dev
sudo gem install mysql

有关详细信息,请参阅http://wiki.rubyonrails.org/database-support/mysql#installation

示例:Ubuntu

sudo apt-get install mysql-server mysql-server-5.0 libmysqlclient15off \
    libmysqlclient15-dev mysql-client-5.0 mysql-common

sudo apt-get install libmysql++-dev

sudo gem install mysql

答案 1 :(得分:10)

我会把它留在这里:

我遇到了类似的问题,然后意识到我无法安装mysql2 gem而没有在我的开发机器上安装MySQL(即使我只使用mysql2 gem连接到远程MySQL服务器)。

:: forehead slap ::

brew install mysql

然后,在我的Gemfile中:

gem 'mysql2', '~> 0.3.11'

然后快速

bundle install

成功!

答案 2 :(得分:3)

如果你正在运行Rails 3,你应该使用mysql2 gem。您可以使用以下命令安装它:

gem install mysql2

您需要先安装MySQL和任何开发标题。这将因不同的操作系统而异。在Ubuntu上,您可以运行:

aptitude install mysql-server 
aptitude install mysql-client
aptitude install mysql-common
aptitude install libmysql-ruby
aptitude install libmysqlclient-dev

如果要创建新项目,请使用:

rails new sample --database=mysql
cd sample
bundle install

有关详细信息,请查看project repository

答案 3 :(得分:1)

我假设您正在使用Rails。

在你的Gemfile中:

gem 'mysql2'

然后在你的终端:

bundle

答案 4 :(得分:1)

2013年,使用Ubuntu 12.04,这对我有用:

sudo apt-get install mysql-client libmysqlclient-dev

bundle install