instalar - Instalación de la gema Ruby MYSQL2 en Windows 7
instalar mysql2 (16)
Descargué el devkit de 32 bits, con mi PC de 64 bits, sin embargo, me doy cuenta de que railsinstaller aparentemente instala una versión de 32 bits de forma predeterminada, por lo que he dirigido todas las instalaciones de 32 bits.
Inicializar el ruby devkit dk.rb init
Descargue el conector mysql de 32 bits y colóquelo en el conector mysql C: / mysql-connector
Debe tener en cuenta que cuando descomprime el archivo, crea una subcarpeta con el mismo nombre y puede dar errores.
Luego use el segundo comando listado arriba:
gem install mysql2 - platform = ruby - ''- with-mysql-dir = "C: / mysql-connector"''
Esta fue la solución que encontré, ya que tenía el mismo problema.
Intento instalar la gema mysql2 en Windows 7, descargué el conector del sitio mysql y coloqué el libmysql.dll en ruby200 / bin
entonces haga la gema instale mysql2
Estos son los resultados ¿estoy siendo débil aquí?
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
En Windows 7 encontré que las respuestas existentes proporcionaban una solución parcial, pero todavía no podía conseguir que se instalara.
El problema que tuve fue que el instalador de Windows Community Edition de MySQL que utilicé insistió en poner los conectores en carpetas llamadas cosas como C:/MySQL/MySQL Connector C 6.1.3
. El proceso de compilación en la gema informaba que no podía encontrar "C: / MySQL / MySQL" (y antes de eso cuando lo tenía en Archivos de programa, se quejaba de que no podía encontrar "C: / Program / includes") por lo que claramente los espacios eran un problema y no podía encontrar una manera de escapar de ellos que pudiera entender, posiblemente alguien podría sugerir uno de esos.
Debido a que no estaba seguro de si el cambio de estos rompería la instalación, una vez que me di cuenta de por qué estaba surgiendo el problema, simplemente creé un enlace simbólico desde la línea de comandos (algo que es más fácil desde cmd
que powershell) como este:
C:/MySQL> mklink /D ConnectorC "./MySQL Connector C 6.1.3"
Entonces podría usar la siguiente línea de instalación:
gem install mysql2 --platform=ruby -- ''--with-mysql-dir="C:/MySQL/ConnectorC/"''
Esto funcionó correctamente.
Además, cuando traté de usarlo, me encontré con este problema, por lo que puede ser útil tener en cuenta que mover el archivo lib de MySQL desde la carpeta libra C Connector podría ser útil.
Esto es lo que funcionó para mí por el mismo error en Windows 8 de 64 bits y el uso de ruby 64-bit
- Descargar e instalar MySQL Server 5.6 de 64 bits
Ejecute este comando:
gem install mysql2 -v ''0.3.16'' -- ''--with-mysql-lib="c:/Program Files/MySQL/MySQL Server 5.6/lib" --with-mysql-include="c:/Program Files/MySQL/MySQL Server 5.6/include"''
Espero que esto ayude
Esto es lo que funcionó para mí:
gem install mysql2 -- ''--with-mysql-dir="C:/wamp/bin/mysql/mysql5.5.xx"''
He estado buscando por unas horas y no he visto esta variación sugerida, ¡así que espero que ayude a alguien!
Esto es lo que hice para windows server 2012 sp2. Nada más funcionó ...
Después de recibir el error ''while installing mysql2 (0.3.17), and bundler cannot continue'' Make sure that ''gem install mysql2 -v ''0.3.17'' succeeds...
1) Descargue el conector MySql C de: 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"''
Nota: el -v ''0.3.17'' anterior, no funcionaría sin esto.
4) bundle install
-> Finalmente, éxito.
He intentado todos los métodos proporcionados pero el mismo error aparece una y otra vez :(
Afortunadamente, la versión anterior se instaló sin ningún error.
gem uninstall mysql2
gem install mysql2 -v 0.2.6
Intenta seguir esos pasos:
Asumo:
- a) usas Windows7
- b) Ruby 2+ en C: / Ruby200-x64
- c) rieles 4+ instalados en ruby
- d) WAMP instalado en C: / wamp y en ejecución
1) desinstala tu gema myslq2:
$ gem uninstall mysql2
2) vuelva a instalar la gema mysql2 con la opción de ruta:
$ gem install mysql2 -- ''--with-mysql-lib="C:/wamp/bin/mysql/mysql5.6.12/lib" --with-mysql-include="C:/wamp/bin/mysql/mysql5.6.12/include"''
3) copie libmysql.dll que encuentre en C: / wamp / bin / mysql / mysql5.6.12 / lib en C: / Ruby200-x64 / bin
4) abra en su aplicación Rails el archivo "Gemfile" y edítelo habilitando el mysql2, agregando:
gem ''mysql2''
5) inicia tu servidor de rieles:
$ rails server
6) abra su navegador y vaya a localhost: 3000 /
Me funcionó después de agregar algunos ajustes
gem install mysql2 --platform=ruby -- ''--with-mysql-lib="C:/Program Files/MySQL/MySQL Connector C 6.1.5/lib" --with-mysql-include="C:/Program Files/MySQL/MySQL Connector C 6.1.5/include" --with-mysql-dir="C:/Program Files/MySQL/MySQL Connector C 6.1.5"
Me las arreglé para tener éxito en esto por pura suerte, pero después de una hora del infierno siento que debería compartir mi solución, obviamente muy abreviada, pero muchos de los pasos que creo que puedes resolver por tu cuenta.
Mi máquina es Win 7 de 64 bits. Pude instalar la versión 0.3.16
- Instale la versión de ruby 2.0.0p481 (?)
- Devkit, bla, bla
- Instale los rieles versión 4.0.0
- Descargue el archivo zip de 64 bits de Mysql Connector C, coloque el disco C como mysqlc
- Toma DLL de ese contenedor, ponlo en lib de ruby
- joya instalar mysql2 - - with-mysql-dir = "C: / mysqlc"
Nada de eso funcionó para mí, hasta que me di cuenta de que tenía instalada la versión de 64 bits del DevKit. Así que descargué el MySQL Connector / C de 64 bits del http://dev.mysql.com/downloads/connector/c/
e instalé la gema con la opción "with-mysql-dir"
Para Cygwin, pude consolidar varios pasos.
- Utilice cygwin setup.exe para descargar gcc, g ++, make, cmake y libmysqlclient-devel (desde puertos cygwin)
- Descargue c / connector src para windows desde el sitio mysql. Descargué la versión 6.x O descargue la versión de libmysqlclient-devel (no estoy seguro de dónde)
- abrir la cremallera
- cd dir_connector
- No es necesario y RISKY, pero si la versión de cygwin libmysqlclient-devel es 5.5.40, entonces cambie las versiones del archivo dir_connector / VERSION a 5.5.40
- mkdir build
- cd build
- comente dtoa en stdlib.h, de lo contrario la compilación falla
- cmake ..
- hacer
- hacer la instalación
- joya instalar mysql2 - --with-mysql-config = / usr / local / mysql / bin / mysql_config
Pasos para Ruby 2.1.3, Windows 8.1 y MySQL Server 5.7. Todo x64 bit.
- Descargar Development Kit
- Kit de desarrollo extraído.
- Ejecute CMD y vaya a dir donde se extrae el Kit de desarrollo
- Ejecute
ruby dk.rb init
- Ejecute
ruby dk.rb install
- Run
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"''
Probé la solución de @Mrk Fldig pero no funcionó ... Entonces, ¿qué resolvió el problema?
- Descargado el último Installer MySQL para Windows 7 32 bits
- Se instaló la gema con el siguiente comando:
gem install mysql2 --platform=ruby -- ''--with-mysql-dir="C:/Program Files/MySQL/MySQL Connector C 6.1 6.1.2/"''
Una de las dificultades a tener en cuenta es que cambié las barras diagonales inversas (/) a barras diagonales normales (/). He intentado el mismo procedimiento con barras diagonales inversas y no funcionó.
El instalador ya incluye los conectores C para MySQL en el directorio MySQL Connector C 6.1 6.1.2
. Por lo tanto, pasar solo el --with-mysql-dir
sin los --with-mysql-lib
o --with-mysql-include
hace que la gema busque el mismo directorio para la lib
e include
directorios
También intente desactivar su antivirus antes de instalar la gema. El mío se instaló después de ejecutar el siguiente comando:
gem install mysql2 --platform=ruby -- ''--with-mysql-lib=
"C:/mysql-connector/lib" --with-mysql-include="C:/mysql-connector/include" --wit
h-mysql-dir="C:/mysql-connector"''
El mismo comando no funcionaba cuando mi antivirus estaba habilitado, ya que estaba empujando algún archivo de rubí al cofre. Espero que esto ayude a alguien.
Todavía tengo problemas con la gema mysql2, pero el enfoque a continuación me ayudó a instalar mysql con RoR en Windows Env.
Paso 1: cambios en el archivo de gemas: ({app} / Gemfile)
Actualizar mysql2 -> mysql
Paso 2: Actualizaciones en el archivo database.yml ({app} /config/database.yml)
Cambiar adaptador: mysql2 -> adaptador: mysql
host: localhost -> host: 127.0.0.1
Paso 3: Downoad mysql-connector-c-noinstall-6.0.2-win32
Paso 4: Copie el archivo mysql-connector-c-noinstall-6.0.2-win32 / lib / libmysql.dll en C: / RailsInstaller / Ruby1.9.3 / bin
Paso 5: actualización del paquete && Start rails server
EDITAR 30/09/2014
Cuando se publicó esta respuesta, el instalador de rieles de 64 bits no era la versión recomendada; ahora parece que la gente está empezando a usarlo más. Se debe tener en cuenta que cuando descargue MySQL Connector necesita descargar 64 o 32 bits para corresponderse con la versión de los rieles que instaló.
Sorprendentemente, tuve suerte con una respuesta muy temprano esta mañana ya que estaba buscando otra cosa de naturaleza similar. No estoy muy seguro de por qué no hay una sola guía simple para esto, ya que parece ser muy sencillo.
Por alguna razón, solo especificar el mysql-dir cuando instala la gema no se levanta con otros subdirectorios, por lo que debe configurar los parámetros manualmente.
Para cualquier otra persona que tenga el mismo problema, hice lo siguiente:
1) Descargue el conector MySql C de: http://dev.mysql.com/downloads/connector/c/
NOTA No descargue el instalador, descargue ARCHIVE para su sistema operativo
Descargue el ARCHIVO de 32 bits o de 64 bits para que se corresponda con la versión de los rieles que instaló.
2) Extraiga el archivo a C: / mysql-connector
3) Luego corrió:
gem install mysql2 --platform=ruby -- ''--with-mysql-lib="C:/mysql-connector/lib" --with-mysql-include="C:/mysql-connector/include" --with-mysql-dir="C:/mysql-connector"''
Voila todo está funcionando bien.
EDITAR 30/01/2014
Solo tuve que hacer una nueva instalación en una máquina de ladrillos y el comando en el paso 3 no funcionó, lo que funcionó fue:
gem install mysql2 --platform=ruby -- ''--with-mysql-dir="C:/mysql-connector"''
No estoy seguro de cuál es la diferencia, pero esta vez parece que está recogiendo los directorios, así que si el primero no funciona, ¡prueba este!
Creo que esto tiene que ver con cómo vas a instalar los rieles, esta vez usé el railsinstaller que parece establecer las rutas de acceso correctamente.
Mucho del resultado aquí parece depender del uso de shell, mucha gente está teniendo problemas con PowerShell así que no aconsejaría usarlo. Hice esto en un símbolo del sistema elevado.
Ah, y por último, si obtienes un error con respecto a la gema mysql2 cuando haces RAILS S, necesitas copiar el archivo libmysql.dll del directorio LIB del conector mysql al directorio bin donde se instalaron los rieles.