Ich habe ein Problem mit einer Installation von Mysql gem. Das ist mein Fehler:MySQL Gem Install Fehler auf Ruby 2.4
gem install mysql -v '2.9.1'
Building native extensions. This could take a while...
ERROR: Error installing mysql:
ERROR: Failed to build gem native extension.
current directory: /usr/local/rvm/gems/ruby-2.4.0/gems/mysql-2.9.1/ext/mysql_api
/usr/local/rvm/rubies/ruby-2.4.0/bin/ruby -r ./siteconf20170107-4120-x2dv85.rb extconf.rb
checking for mysql_ssl_set()... yes
checking for rb_str_set_len()... yes
checking for rb_thread_start_timer()... no
checking for mysql.h... yes
creating Makefile
To see why this extension failed to compile, please check the mkmf.log which can be found here:
/usr/local/rvm/gems/ruby-2.4.0/extensions/x86_64-linux/2.4.0/mysql-2.9.1/mkmf.log
current directory: /usr/local/rvm/gems/ruby-2.4.0/gems/mysql-2.9.1/ext/mysql_api
make "DESTDIR=" clean
current directory: /usr/local/rvm/gems/ruby-2.4.0/gems/mysql-2.9.1/ext/mysql_api
make "DESTDIR="
compiling mysql.c
mysql.c: In function ‘stmt_bind_result’:
mysql.c:1320:74: error: ‘rb_cFixnum’ undeclared (first use in this function)
else if (argv[i] == rb_cNumeric || argv[i] == rb_cInteger || argv[i] == rb_cFixnum)
^
mysql.c:1320:74: note: each undeclared identifier is reported only once for each function it appears in
mysql.c: At top level:
cc1: warning: unrecognized command line option "-Wno-self-assign"
cc1: warning: unrecognized command line option "-Wno-constant-logical-operand"
cc1: warning: unrecognized command line option "-Wno-parentheses-equality"
cc1: warning: unrecognized command line option "-Wno-tautological-compare"
Makefile:241: recipe for target 'mysql.o' failed
make: *** [mysql.o] Error 1
make failed, exit code 2
Gem files will remain installed in /usr/local/rvm/gems/ruby-2.4.0/gems/mysql-2.9.1 for inspection.
Results logged to /usr/local/rvm/gems/ruby-2.4.0/extensions/x86_64-linux/2.4.0/mysql-2.9.1/gem_make.out
Wenn ich versuche, diesen Befehl sudo gem install mysql -v '2.9.1'
, funktioniert es ist, und ich lese diese Zeile zu rechtfertigen ...
sudo gem install mysql -v '2.9.1'
Building native extensions. This could take a while...
Successfully installed mysql-2.9.1
Parsing documentation for mysql-2.9.1
Done installing documentation for mysql after 0 seconds
1 gem installed
Ich verstehe nicht, was passiert ist und wie man löste das. Wenn mir jemand helfen könnte ...
Danke für Ihre Antwort, in der Tat war die Version von Ruby das Problem. Ich werde überprüfen, um zu mysql2 gem zu ändern. – Christophe