我几乎没有看到关于这个问题的话题,但没有一个能解决我的问题。
所以。平台为CentOS 6.6。我已经安装了Percona集群、它们的mysql-lib和它们的开发包。我也有红宝石2.0.0和红宝石2.4.3。现在,我正在尝试安装mysql。我得到的是:
构建本机扩展。这需要一段时间..。错误:安装mysql时出错:错误:无法构建创业板本机扩展。 /opt/sensu/embedded/bin/ruby -r ./siteconf20141114-16854-1fyrg9v.rb extconf.rb检查mysql_ssl_set()* extconf.rb失败*无法创建Makefile,原因可能是缺少必要的库和/或标题。有关更多细节,请查看mkmf.log文件。您可能需要配置选项。 提供配置选项:--with-opt-dir --without include=${opt-dir}/include--without lib--without lib=${opt-dir}/lib-with-make-prog-include Provided =.-ruby=/opt/sensu/embedded/bin/ruby-with-mysql-config- /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:534:in
try_link' from /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:720:intry_func‘from /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:534:intry_link' from /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:720:intry_func’bin/lib/ruby/2.0.0从/opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:340:inblock (2 levels) in postpone' from /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:310:in打开到/opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:340:inblock in postpone' from /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:310:inopen‘/opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:336:inpostpone' from /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:894:inchecking_for’中的/mkmf.rb:1004:inblock in have_func' from /opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:895:in块来自/opt/sensu/embedded/lib/ruby/2.0.0/mkmf.rb:1003:inhave_func' from extconf.rb:45:in‘ extconf失败,退出代码1 Gem文件将继续安装在/opt/sensu/embedded/lib/ruby/gems/2.0.0/gems/mysql-2.9.1中以供检查。登录到/opt/sensu/embedded/lib/ruby/gems/2.0.0/extensions/x86_64-linux/2.0.0/mysql-2.9.1/gem_make.out的结果
我在网上找到的任何一个描述的解决方案都帮不了我,所以,也许有人在Percona集群和ruby-2.0.0以及gem mysql-2.9.1上也有类似的问题。
发布于 2014-11-14 08:45:31
看起来您需要使用SSL的Ruby的开发库:
尝试以下每一种方法:
yum install gcc
yum install mysql mysql-devel mysql-server
yum install openssl openssl-devel
yum install ruby-devel然后尝试安装更新的mysql2 gem:
gem install mysql2 --version '>=0.3.17'Sensu期望SSL,所以拥有它是很好的。Sensu文档说:“没有SSL就可以使用Sensu,但是它是非常不受欢迎的。下面的说明使用一个工具来生成自签名的OpenSSL证书”。了解如何在此处启用SSL:
http://sensuapp.org/docs/latest/certificates#documentation如果需要SSL,则可能希望确保数据库启用SSL:
> show variables like '%ssl%';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| have_openssl | YES |
| have_ssl | YES |
...您在评论中写道,您无法安装mysql-devel和mysql-server,因为它们将与percona冲突。我的猜测是,错误是较旧的mysql gem和/或对SSL的需要。
如果您使用的是rvm,它也可能导致这类故障。您可能需要尝试ruby-install并安装当前的红宝石。这可能会带来所需的依赖关系。如果需要,可以在自定义目录中使用ruby-install,如下所示:
$ ruby-install ruby 2.1.5 --install-dir ~/foo/bar/如果您使用的是sudo gem install,那么它也会给本机宝石带来故障。您可能希望尝试成为root用户,并使用实际的root环境和root ruby版本,并再次检查ruby版本是否与您所期望的一样,如下所示:
$ sudo su -
# which ruby
# ruby --version
# gem install mysql2 --version '>=0.3.17'https://stackoverflow.com/questions/26925066
复制相似问题