Fehler “… kann solche Datei nicht laden - mysql2 / 2.0 / mysql2 (LoadError)”. Unter Windows XP mit Ruby 2.0.0

Der Befehlrails server wirft diesen Fehler.

C:/Ruby200/lib/ruby/gems/2.0.0/gems/mysql2-0.3.11-x86-mingw32/lib/mysql2/mysql2.rb:2:in `require': cannot load
 such file -- mysql2/2.0/mysql2 (LoadError)

ich benutzeRuby 2.0.0 vonRubyInstaller auf Windows XP-Box.

Ich habe herausgefunden, was das Problem ist, weiß aber nicht, wie ich es lösen soll. Das Problem ist, dass es keine gibt2.0/ Verzeichnis in dermysql2-0.3.11-x86-mingw32 Juwel. Dies ist das Juwel, dasrails installiert als seine Abhängigkeit vonGemfile:

GEM
  remote: https://rubygems.org/
  specs:
     ... many gems here
     mysql2 (0.3.11-x86-mingw32)
     ... many gems here
DEPENDENCIES
  ...
  mysql2
  ...

Das ist was drin istmysql2.rb Datei:

# C:\Ruby200\lib\ruby\gems\2.0.0\gems\mysql2-0.3.11-x86-mingw32\lib\mysql2\mysql2.rb

RUBY_VERSION =~ /(\d+.\d+)/
require "mysql2/#{$1}/mysql2"  # <<-- this is that #2 line that throws an error

Es ist offensichtlich, dass es die aktuelle Ruby-Versionsnummer verwendet und als Pfadsegment verwendet, um einige zu erreichenmysql2 Datei. In der Tat ist esmysql2.so Datei. Wie ich benutzeRuby 2.0.0 das Pfadsegment ist2.0:

mysql2/2.0/mysql2

Ok, jetzt mal sehen, wie das Verzeichnis vonmysql2-0.3.11-x86-mingw32 Edelstein sieht aus wie:

dir: C:\Ruby200\lib\ruby\gems\2.0.0\gems\mysql2-0.3.11-x86-mingw32\lib\mysql2\

Nein nein2.0/ Verzeichnis.

Ich kenne das Problemlibmysql.dll. Ich habe es in meinemC:\Ruby200\bin. Es hilft nicht.

Ich habe diese Antwort gelesenhttps://stackoverflow.com/a/5368767/1114926 vom Ersteller von RubyInstaller. Ich habe es versucht, aber es hat nicht geholfen. Es funktioniert fürRuby 1.9.3 weil es gibt1.9/ Verzeichnis. Aber es funktioniert nicht fürRuby 2.0.0.

Wie man es löst?

UPD 1:

Danke für deinAntworten. Ich habe es versucht. Leider habe ichERROR: Failed to build gem native extension. Error:

C:\>gem install mysql2 --platform=ruby
Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
ERROR:  Error installing mysql2:
        ERROR: Failed to build gem native extension.

    C:/Ruby200/bin/ruby.exe extconf.rb
checking for rb_thread_blocking_region()... *** 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=C:/Ruby200/bin/ruby
C:/Ruby200/lib/ruby/2.0.0/mkmf.rb:431:in `try_do': The compiler failed to generate an executable file. (Runtim
eError)
You have to install development tools first.
... other code follows here...

Es sagt:

Sie müssen zuerst die Entwicklungstools installieren.

Aber ich habe volles DevKit installiert, RubyInstaller installiert es. Kann nicht verstehen, was es sonst noch braucht.

Ich habe bereits eine Ausgabe an gepostetmysql2 GitHub Seitehttps://github.com/brianmario/mysql2/issues/364. Noch keine Antworten.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage