2009-11-03 32 views
7

Estoy tratando de instalar bcrypt-ruby en Windows Vista.Instalación de gema bcrypt-ruby en Windows

Hasta ahora, he podido instalar nmake.exe desde un artículo de la base de conocimiento de MS y cl.exe desde la instalación de Visual Studio 2008 Express.

Sin embargo, ahora estoy encontrando este error:

cl -nologo -Wall -I. -IC:/InstantRails/ruby/lib/ruby/1.8/i386-mswin32 -I 
C:/InstantRails/ruby/lib/ruby/1.8/i386-mswin32 -I. -MD -Zi -O2b2xg- -G6 -c -Tcb crypt.c 
cl : Command line warning D9035 : option 'Og-' has been deprecated and will be removed in a future release 
cl : Command line warning D9002 : ignoring unknown option '-G6' bcrypt.c 
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\stdio.h(381) : warning C4255: '_get_printf_count_output' : no function prototype given: converting '()' to '(void)' 
C:\Program Files\Microsoft Visual Studio 9.0\VC\INCLUDE\stdlib.h(215) : warning C4255: '_get_purecall_handler' : no function prototype given: converting '()' to '(void)' 
c:\instantrails\ruby\lib\ruby\gems\1.8\gems\bcrypt-ruby-2.1.2\ext\mri\blf.h(37): fatal error C1083: Cannot open include file: 'stdint.h': No such file or directory 
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.EXE"' : return code '0x2' Stop. 

ya he ejecutado VCVARS32.BAT que presumiblemente establece el entorno. Sospecho que las advertencias y errores se deben a la instalación de una versión más nueva de Visual Studio.

¿Alguien ha hecho esto con éxito? No tengo una copia de Visual Studio 6.0.

Respuesta

9

La forma mejor, más fácil es instalar el development kit:

  1. Descargar devkit-<version>.7z de here;
  2. descomprimirlo en el directorio de Rubí (por ejemplo, C:\Ruby, por lo que tendrá que C:\Ruby\devkit;
  3. desde la línea de comandos, escriba: gem install bcrypt-ruby
+0

Mi solución fue cambiar a Mac =) En un día más o menos, si esta es la "mejor" solución (no lo voy a probar), elegiré la tuya como respuesta. Aunque suena como una buena solución. – Jaryl

+0

Puedo confirmar que la gema se compila e instala correctamente con el DevKit instalado: http://pastie.org/866429 Solución menos drástica que cambiar a una Mac. ;) –

+0

Pero tienes que tener instalado Visual C++ 6.0, ¿verdad? ¡No puedo hacer que esto funcione sin VC 6.0! ¿De dónde saco este compilador de 12 años ...? –

1

Para poder construir una extensión de gema para el instalador de un clic (OCI) necesita VC6. Mxing y las diferentes versiones de Visual Studio más nuevas fallarán o generarán errores desconocidos durante el tiempo de ejecución.

Recomendaría evitar todos estos inconvenientes y proceder con el sucesor de One-Click, que se llama RubyInstaller.

  1. Descargar e instalar ya sea 1.8.6 o 1.9.1 RC1 paquetes, announced at RubyForge
  2. descargar el kit de desarrollo, y descomprimirlo en su instalación de Ruby
  3. INSTALL.txt ¡Siga las instrucciones para ajustar el DevKit a la ubicación que lo extrajo
  4. Proceder con gem install bcrypt-ruby, trabajará fuera de la caja

Para más detalles sobre el uso de otras gemas o los rieles con esta nueva versión de ER, consulte la sección tutorials en nuestra Wiki.

Espero que esto ayude.

+0

@Luis: acaba de descubrir una mejor manera. – giorgian

+0

@giorgian: por favor comparte. –

1

Try a continuación comando

joya instalar bcrypt. -ruby --platform = mswin32

+0

La mejor manera que he encontrado fue el cambio a una Mac.Entonces no puedo probar si tu solución funciona. Si alguien lo prueba y comenta aquí, lo aceptaré como la respuesta. – Jaryl

0

me encontré con el mismo problema al instalar idear en ventanas.

tal vez usted podría checkout esto: http://github.com/oneclick/rubyinstaller/wiki/development-kit

y Giorgian es correcta, se presta atención aquí:

  1. versión rubí: debe instalar la versión "ruby instalador", pero la versión no .zip u otra versión .

  2. descomprimirlo en el directorio de Rubí (por ejemplo, C: \ Ruby, por lo que tendrá que C: \ Rubí \ SDK de;

  3. Si ha instalado Ruby desde otro archivo de configuración (que no es rubí instalador), debe quitarlo, a continuación, instalar rubí con el instalador rubí. no se limitan a reescribir.

  4. hay necesidad de instalar VC6, no va a trabajar con otra versión de configuración de rubí (que no es Ruby-installer). Si lo instalaste solo para configurar el Ruby-gem, te sugiero que lo elimines.

  5. n o necesita instalar MinGW, porque dev-kit está basado en él.

Pasé casi 15 horas para resolver este problema. y ahora es el momento de decir que "ruby-installer" + "dev kit" es nuestra elección para construir la gema nativa.

0

En Windows Server 2003 (Rubí 1.8.6), el sabor de vainilla:

gem install bcrypt-ruby 

funcionó de maravilla.
Tenga en cuenta que si quieres usarlo con rieles, debe utilizar:

config.gem 'bcrypt-ruby', :lib => 'bcrypt' 
0

Para mí, una parte del problema estaba en el hecho de que tenía instalado Ruby2.0.0 x64 (Estoy corriendo Win8), que parecía ser incompatible con el compilador gcc que estaba usando.

He quitado mi instalación de rubí, rubí e instalado 1.9.3 junto con Bündler, rieles y algunos otros paquetes con el uso railsInstaller (http://railsinstaller.org/) y ahora soy capaz de instalar bcrypt-rubí :)

1

Para mí, lo siguiente funcionó

gem uni bcrypt-ruby 
gem i bcrypt-ruby --platform=ruby 
+0

Gracias por ese comentario. El devkit es absolutamente necesario, pero solo si lo desinstalo y luego vuelvo a instalar con la parte --platform = ruby ​​funciona (de lo contrario no llamará al devkit). –

+1

Además, ahora necesito especificar la versión exacta de la gema que deseo instalar, algo dentro de mi sistema exige 3.1.1. –

Cuestiones relacionadas