在 Ubuntu 16.04LTS 上安装 mysql2 gem 时出错 [英] Error installing mysql2 gem on Ubuntu 16.04LTS

查看:63
本文介绍了在 Ubuntu 16.04LTS 上安装 mysql2 gem 时出错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我尝试了 sudo gem install mysql2 -v '0.4.4' 并出现错误.检查/var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/mysql2-0.4.4/mkmf.log:

I tried sudo gem install mysql2 -v '0.4.4' and got error. Checking /var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/mysql2-0.4.4/mkmf.log:

"gcc -o conftest -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -Wdate-time -D_FORTIFY_SOURCE=2   -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fPIC conftest.c  -L. -L/usr/lib/x86_64-linux-gnu -L. -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -fstack-protector -rdynamic -Wl,-export-dynamic     -lruby-2.3  -lpthread -lgmp -ldl -lcrypt -lm   -lc"
checked program was:
/* begin */
1: #include "ruby.h"
2: 
3: int main(int argc, char **argv)
4: {
5:   return 0;
6: }
/* end */

所以在我看来 ruby​​.h 是问题所在.但我可以在以下位置找到它:

So it seems to me ruby.h was the problem. But I can find it in:

/usr/include/ruby-2.3.0/ruby/ruby.h
/usr/include/ruby-2.3.0/ruby.h

我检查了 错误在安装 json gem 时,'mkmf.rb 找不到 ruby​​ 的头文件',但实际上我已经安装了 ruby​​ 开发.

I checked Error while installing json gem 'mkmf.rb can't find header files for ruby' but in fact I have installed ruby development.

sudo dpkg -l |grep ruby​​ 也显示我有:

sudo dpkg -l | grep ruby also shows I have:

sudo dpkg -l | grep ruby
ii  libruby2.3:amd64                      2.3.1-2~16.04                     amd64        Libraries necessary to run Ruby 2.3
ii  rake                                  10.5.0-2                          all          ruby make-like utility
ii  ruby                                  1:2.3.0+1                         all          Interpreter of object-oriented scripting language Ruby (default version)
ii  ruby-bundler                          1.11.2-1                          all          Manage Ruby application dependencies (runtime)
ii  ruby-dev:amd64                        1:2.3.0+1                         amd64        Header files for compiling extension modules for Ruby (default version)
ii  ruby-did-you-mean                     1.0.0-2                           all          smart error messages for Ruby > 2.3
ii  ruby-eventmachine                     1.0.7-3build3                     amd64        Ruby/EventMachine library
ii  ruby-minitest                         5.8.4-2                           all          Ruby test tools supporting TDD, BDD, mocking, and benchmarking
ii  ruby-molinillo                        0.4.3-1                           all          generic dependency resolution algorithm
ii  ruby-mysql                            2.9.1-1ubuntu1                    amd64        MySQL module for Ruby
ii  ruby-mysql2                           0.4.3-2ubuntu2                    amd64        simple, fast MySQL library for Ruby
ii  ruby-net-http-persistent              2.9.4-1                           all          Manages persistent connections using Net::HTTP
ii  ruby-net-telnet                       0.1.1-2                           all          telnet client library
ii  ruby-power-assert                     0.2.7-1                           all          library showing values of variables and method calls in an expression
ii  ruby-test-unit                        3.1.7-2                           all          unit testing framework for Ruby
ii  ruby-thor                             0.19.1-2                          all          Ruby scripting framework
ii  ruby2.3                               2.3.1-2~16.04                     amd64        Interpreter of object-oriented scripting language Ruby
ii  ruby2.3-dev:amd64                     2.3.1-2~16.04                     amd64        Header files for compiling extension modules for the Ruby 2.3
ii  rubygems-integration                  1.10                              all          integration of Debian Ruby packages with Rubygems

那么我该如何解决这个问题?

So how can I fix this?

推荐答案

尝试安装 gcc 和 make.这对我有用.

Try install gcc and make. This work for me.

apt-get install gcc make

这篇关于在 Ubuntu 16.04LTS 上安装 mysql2 gem 时出错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆