Rails - mysql2安装错误
Rails - mysql2安装错误
我最近在我的当前系统中安装了rvm,以便在Rails3.x版本中使用Rails5。当我尝试创建新的Rails5应用程序时,出现了以下错误:在任何源中找不到合适版本的railties(3.2.13)。运行`bundle install`以安装缺失的gems。
当我尝试运行bundle install时,遇到了困难:
gem install mysql2 -v '0.3.11' 正在构建本机扩展,可能需要一段时间... /home/himanth/.rvm/rubies/ruby-2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/ext/builder.rb:73: 警告:在PATH中存在不安全的可写目录/home/himanth/.rvm/gems,模式为040777 错误:安装mysql2失败: 错误:无法构建本机扩展。 /home/himanth/.rvm/rubies/ruby-2.3.1/bin/ruby extconf.rb 正在检查rb_thread_blocking_region()... no 正在检查rb_wait_for_single_fd()... yes 正在检查mysql.h... yes 正在检查errmsg.h... yes 正在检查mysqld_error.h... yes 正在创建Makefile make "DESTDIR=" clean make "DESTDIR=" 正在编译mysql2_ext.c 从./client.h:11:0导入, 从./mysql2_ext.h:39导入, 从mysql2_ext.c:1导入: /home/himanth/.rvm/rubies/ruby-2.3.1/include/ruby-2.3.0/ruby/backward/rubysig.h:14:2: 警告:#warning rubysig.h已过时[-Wcpp] 从./mysql2_ext.h:39导入, 从mysql2_ext.c:1导入: ./client.h: 在函数'rb_thread_blocking_region'中: ./client.h:23:3: 错误:'TRAP_BEG'未声明(在此函数中首次使用) ./client.h:23:3: 注意:每个未声明的标识符仅报告一次,只出现在每个函数中 ./client.h:25:3: 错误:'TRAP_END'未声明(在此函数中首次使用) 在顶层mysql2_ext.c: ./client.h:16:1: 警告:'rb_thread_blocking_region'已定义但未使用[-Wunused-function] make: *** [mysql2_ext.o] 错误 1 make失败,退出代码2 Gem文件将保留在/home/himanth/.rvm/gems/ruby-2.3.1@rails5/gems/mysql2-0.3.11中以供检查。 结果记录在/home/himanth/.rvm/gems/ruby-2.3.1@rails5/extensions/x86_64-linux/2.3.0/mysql2-0.3.11/gem_make.out中 在继续bundling之前,请确保`gem install mysql2 -v '0.3.11'`成功。
我被这个问题困扰了很长时间,非常感谢任何帮助。