Ruby MYSQL2 joyau de l'installation sur windows 7
Je suis en train d'installer le mysql2 gem sur windows 7, j'ai téléchargé le connecteur du site de mysql et placé le libmysql.dll dans ruby200\bin
alors ne gem install mysql2
Ce sont les résultats que l'on me dim ici?
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()... yes
checking for rb_wait_for_single_fd()... yes
checking for rb_hash_dup()... yes
checking for rb_intern3()... yes
*** 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
--with-mysql-dir
--without-mysql-dir
--with-mysql-include
--without-mysql-include=${mysql-dir}/include
--with-mysql-lib
--without-mysql-lib=${mysql-dir}/
extconf.rb:37:in `<main>': undefined method `[]' for nil:NilClass (NoMethodError
)
Gem files will remain installed in C:/Ruby200/lib/ruby/gems/2.0.0/gems/mysql2-0.
3.13 for inspection.
Results logged to C:/Ruby200/lib/ruby/gems/2.0.0/gems/mysql2-0.3.13/ext/mysql2/g
em_make.out
- Comme il l'indique, découvrez: les Résultats enregistrés sur C:/Ruby200/lib/ruby/gems/2.0.0/gems/mysql2-0.3.13/ext/mysql2/g em_make.et aussi mkmf.journal de descriptif des erreurs. Les poster ici. Il doit probablement en-têtes tels que par la fourniture de "gem install mysql2 -- --with-MySQL-lib=<source de MySQL fichier qui correspond le bon niveau mod>". Ces fichiers peuvent être téléchargés afin de permettre l'installation, mais assurez-vous qu'il correspond à votre joyau du mod niveau. J'utilise BitNami Rubystack sur Windows 8, qui comprend MySQL. RailsInstaller est très populaire globale de l'installation.
- Il peut être un problème natif de la gemme de l'installation. Pouvez-vous installer d'autres natifs des perles comme bson_ext?
- Ouais merci pour l'aide les gars, @R_G oui vous avez raison j'avais besoin de spécifier l'emplacement de chacune des fichiers via le joyau de commande ci-dessous, tout à fait pourquoi gem install ne regardez pas dans le même dossier que je ne suis pas sûr, j'ai essayé de rester à l'écart de livré les installateurs, il m'aide à comprendre les rails un peu mieux!
- double possible de Impossible d'installer mysql2 gem sur windows 7
- Lire le texte jaune en haut de ma question. C'est la raison pour laquelle le gem mysql, ni le mysql2 gem ne s'installe pas! stackoverflow.com/questions/30361280/...
- Merci MacGyver que par le peu de jaune, cette question ne donne de réponse c'est celui avec 85 upvotes.... 😉
Vous devez vous connecter pour publier un commentaire.
MODIFIER 30/09/2014
Lorsque cette réponse a été posté le 64 bits rails installateur n'était pas la version recommandée - il semble maintenant les gens commencent à l'utiliser davantage. Il convient de noter lorsque vous téléchargez le Connecteur MySQL, vous devez télécharger 64 ou 32 bits pour correspondre à la version de rails que vous avez installés.
Étonnamment, j'ai eu de la chance sur une réponse très tôt ce matin, comme j'étais à la recherche de quelque chose d'autre, de nature similaire. Je ne suis pas tout à fait sûr de savoir pourquoi il n'y a pas un seul guide simple pour ce qu'il semble être très simple!
Pour quelque raison, simplement en spécifiant le mysql-dir lorsque vous installez le gem ne ramasse pas avec d'autres sous-répertoires, vous devez définir les paramètres manuellement.
Pour quelqu'un d'autre rencontre le même problème, j'ai fait la suivante:
1) Télécharger le MySql C Connecteur: http://dev.mysql.com/downloads/connector/c/
REMARQUE Ne pas télécharger le programme d'installation, téléchargez l'ARCHIVE pour votre système d'exploitation
Télécharger le 32 bits ou 64 bits d'ARCHIVE afin de correspondre à la version de rails que vous avez installés.
2) Extraire le fichier à C:\mysql-connector
3), Puis a couru:
Voila tout fonctionne bien.
MODIFIER 30/01/2014
J'ai juste eu à faire une nouvelle installation sur un muré de la machine et la commande de l'étape 3 n'a pas fonctionné, ce qui a fait le travail a été:
Je ne suis pas sûr que la différence est, mais cette fois, il semble être à ramasser les répertoires ok, donc si le premier ne fonctionne pas, essayez celui-ci!
Je pense que cela a à voir avec la façon dont vous allez sur l'installation de rails, cette fois-ci, j'ai utilisé le railsinstaller qui semble définir les chemins d'accès correctement.
Beaucoup des résultats ici semble dépendre de la coque de votre aide, beaucoup de gens ont des problèmes avec powershell donc je ne le conseille pas de l'utiliser. Je l'ai fait dans une invite de commande élevée.
Oh, et enfin, si vous obtenez une erreur concernant la mysql2 gem quand vous faites des RAILS S, vous devez copier les libmysql.dll à partir du répertoire LIB de l'mysql connector vers le répertoire bin où rails a été installé.
http://rubyinstaller.org/add-ons/devkit/
J'ai essayé la solution de @Mrk Fldig mais il ne fonctionne pas...
Donc, ce qui a résolu le problème était le suivant:
gem install mysql2 --platform=ruby -- '--with-mysql-dir="C:/Program Files/MySQL/MySQL Connector C 6.1 6.1.2/"'
Un écueil à être conscient, c'est que j'ai changé les barres obliques inverses (\) à la normale des barres obliques (/). J'ai essayé la même procédure avec les barres obliques inverses et ça ne fonctionne pas.
Le programme d'installation inclut déjà le C connecteurs pour MySQL
MySQL Connector C 6.1 6.1.2
répertoire. Par conséquent, transmettre uniquement les--with-mysql-dir
paramètre sans le--with-mysql-lib
ou--with-mysql-include
paramètres, rend le bijou à regarder le même répertoire pourlib
etinclude
répertoiresÉtapes pour Ruby 2.1.3, Windows 8.1 et Serveur MySQL 5.7. Tous x64 bits.
ruby dk.rb init
ruby dk.rb install
gem install mysql2 -- '--with-mysql-lib="c:\Program Files\MySQL\MySQL Server 5.7\lib" --with-mysql-include="c:\Program Files\MySQL\MySQL Server 5.7\include" --with-mysql-dir="c:\Program Files\MySQL\MySQL Server 5.7"'
C'est ce qui a fonctionné pour moi pendant la même erreur sur Windows 8 64-bit et à l'aide de ruby 64 bits
Exécuter cette commande:
Espère que cette aide
J'ai essayé toutes les méthodes fournies, mais le même message d'erreur s'affiche encore et encore 🙁
Heureusement, la version ancienne, sans erreurs!
Essayez de suivre ces étapes:
Je suppose:
1) désinstaller votre myslq2 gem:
2) réinstaller le mysql2 joyau de l'option chemin d'accès:
3) copier le libmysql.dll vous trouverez dans C:\wamp\bin\mysql\mysql5.6.12\lib en C:\Ruby200-x64\bin
4) ouvrez dans votre application rails, le fichier Gemfile" et de modifier l'activation de la mysql2, en ajoutant:
5) démarrez votre serveur rails:
6) ouvrez votre navigateur et allez à localhost:3000/
Je suis toujours avoir des problèmes avec mysql2 gem, mais ci-dessous approche m'a aidé à installer mysql avec RoR sur Windows Env.
Étape 1 : Gem modifications du Fichier : ({app}/Gemfile)
Mise à jour mysql2 --> mysql
Étape 2 : Mises à jour dans la base de données.fichier yml ({app}/config/database.yml)
Adaptateur de changement: mysql2 --> carte: mysql
de l'hôte: localhost --> host: 127.0.0.1
Étape 3 : Télécharger mysql-connector-c-noinstall-6.0.2-win32
Étape 4 : Copie mysql-connector-c-noinstall-6.0.2-win32\lib\libmysql.dll fichier C:\RailsInstaller\Ruby1.9.3\bin
Étape 5 :bundle update && Start serveur rails
Voici ce qui a fonctionné pour moi:
Été la recherche de quelques heures et de ne pas voir cette variation suggère, donc j'espère que cela aidera quelqu'un!
Aussi essayer de désactiver votre antivirus avant d'installer la gem. Le mien s'est installé après j'ai couru commande suivante :
Même commande ne fonctionnait pas quand mon antivirus est activé, comme il était de pousser certains fichier ruby à la poitrine.
Espérons que cela aide quelqu'un.
Pour Cygwin, j'ai pu consolider les différentes étapes.
Ruby installer
rubyinstaller-devkit-2.5.3-1-x64
Connecteur Mysql: mysql-connector-c-6.1.11-win32
https://downloads.mysql.com/archives/c-c/?version=6.1.2&os=src
Gem install:
gem install mysql2 --=plate-forme de rubis -- --with-mysql-lib="c:\mysql-connector-c-6.1.11-win32"
J'ai téléchargé le devkit 32-bit, avec mon pc 64 bits, cependant je me rends compte que railsinstaller apparemment installe une version 32 bits par défaut, j'ai donc demandé à toutes les installations de 32 bits.
Initialiser le rubis devkit dk.rb init
Télécharger mysql connector 32 bits, et le placer dans la base de données mysql-connector C: \ mysql-connector
Vous devez être conscient que lorsque vous décompressez le fichier, il crée un sous-dossier avec le même nom et peut donner lieu à des erreurs.
Alors utiliser la deuxième commande ci-dessus:
C'était la solution que j'ai trouvé, comme je l'ai eu le même problème.
Sur Windows 7, j'ai trouvé que les réponses apporté une solution partielle, mais je ne pouvais pas le faire installer.
Le problème que j'avais était que le MySQL Community Edition programme d'installation de Windows, j'ai utilisé insisté sur la mise connecteurs dans des dossiers appelés des choses comme
C:\MySQL\MySQL Connector C 6.1.3
. Le processus de construction de la gemme a été déclaré qu'il ne pouvait pas trouver "C:\MySQL\MySQL" ( et avant que quand je l'ai eu dans Program Files, il se plaint qu'il ne pouvait pas trouver "C:\Program\includes" ) si clairement les espaces étaient un problème et je ne pouvais pas trouver un moyen de leur échapper qu'il pouvait comprendre - peut-être que quelqu'un sera en mesure de suggérer l'un de ceux-ci.Parce que je n'étais pas sûr de savoir si la modification de ces briserait l'installation, une fois que j'ai réalisé pourquoi le problème se pose je viens de créer un lien symbolique à partir de la ligne de commande ( quelque chose qui est plus facile à partir
cmd
que powershell ) comme ceci:Ensuite, j'ai pu utiliser l'installation suivant la ligne:
Cela fonctionnait correctement.
Aussi, quand j'ai essayé de l'utiliser, j'ai couru dans ce problème de sorte qu'il peut être utile d'être conscient que le déplacement de la base de données MySQL fichier lib de la C Connecteur dossier lib pourrait être utile.
J'ai réussi à réussir dans ce de la pure chance, mais après une heure d'enfer je me sens comme je devrais partager ma solution, visiblement très raccourci, mais beaucoup des étapes que je pense que vous pouvez comprendre comment le faire sur votre propre.
Ma machine est Win 7 64 bits. J'ai pu installer la version 0.3.16
Cela a fonctionné pour moi, après l'ajout de quelques améliorations
Aucune de ce qui a fonctionné pour moi, jusqu'à ce que je réalise que j'ai la version 64 bits du DevKit installé. J'ai donc téléchargé la version 64 bits de MySQL Connector/C à partir de Site web de MySQL
et installé le joyau de la "with-mysql-dir" option
Voici ce que j'ai fait pour windows server 2012 sp2. Rien d'autre n'a fonctionné...
Après la réception d'erreur
'while installing mysql2 (0.3.17), and bundler cannot continue' Make sure that 'gem install mysql2 -v '0.3.17' succeeds...
1) Télécharger le MySql C Connecteur: http://dev.mysql.com/downloads/connector/c/
2)
Extract the file to C:\mysql-connector
3)
gem install mysql2 -v '0.3.17' --platform=ruby -- '--with-mysql-dir="C:\mysql-connector"'
Remarque: l'option-v '0.3.17" ci-dessus, il ne pourrait pas fonctionner sans cette.
4)
bundle install
--> Enfin, le Succès.