2009-11-03 2 views
7

J'essaie d'installer bcrypt-ruby sous Windows Vista. Jusqu'à présent, j'ai pu installer nmake.exe à partir d'un article de la base de connaissances MS et cl.exe à partir de l'installation de Visual Studio 2008 Express.Installation de gem bcrypt-ruby sous Windows

Cependant, je rencontre maintenant cette erreur:

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. 

Je l'ai déjà exécuté vcvars32.bat qui définit sans doute l'environnement. Je soupçonne que les avertissements et les erreurs sont dus à l'installation de la nouvelle version de Visual Studio.

Quelqu'un at-il fait cela avec succès? Je n'ai pas une copie de Visual Studio 6.0.

Répondre

9

La meilleure, plus simple est d'installer le development kit:

  1. Télécharger devkit-<version>.7z de here;
  2. décompresser dans le répertoire Ruby (par exemple, C:\Ruby, de sorte que vous aurez C:\Ruby\devkit;
  3. de la ligne de commande, tapez: gem install bcrypt-ruby
+0

Ma solution était de passer à un Mac =) Dans un jour ou deux, si c'est la meilleure solution (je ne vais pas le tester), je vais choisir le vôtre comme réponse. Cela semble être une bonne solution. – Jaryl

+0

Je peux confirmer que la gemse compile et installe correctement avec le DevKit installé: http://pastie.org/866429 Un peu moins d'une solution drastique que de passer à un Mac. ;) –

+0

Mais vous devez avoir Visual C++ 6.0 installé, non? Je ne peux pas obtenir ceci pour fonctionner sans VC 6.0! Où puis-je obtenir ce compilateur de 12 ans ... ?? –

1

Pour pouvoir créer une extension gem pour le programme d'installation One-Click (OCI), vous avez besoin de VC6. Mxing et correspondant à différentes versions de Visual Studio plus récent échouera ou générera des erreurs inconnues au cours de l'exécution.

Je recommande d'éviter tous ces tracas et de procéder avec le successeur de One-Click, qui s'appelle RubyInstaller.

  1. Téléchargez et installez soit 1.8.6 ou 1.9.1 RC1 paquets, announced at RubyForge
  2. Téléchargez le kit de développement, et le décompresser sur votre installation Ruby
  3. Suivez INSTALL.txt instructions pour régler le DevKit à l'emplacement extrait il
  4. Procéder à gem install bcrypt-ruby, fonctionnera de la boîte

Pour plus de détails sur l'utilisation d'autres pierres précieuses ou Rails avec cette nouvelle version, veuillez voir la section tutorials dans notre Wiki.

Espérons que cela aide.

+0

@Luis: juste trouvé une meilleure façon. – giorgian

+0

@giorgian: merci de partager. –

1

Essayez ci-dessous commande

gem install bcrypt. -ruby --platform = mswin32

+0

Le meilleur moyen que j'ai trouvé était le passage à un Mac.Donc, je ne peux pas tester si votre solution fonctionne. Si quelqu'un essaie ceci et commente ici, je l'accepterai comme réponse. – Jaryl

0

j'ai rencontré le même problème lors de l'installation dans les fenêtres concevoir.

vous pourriez peut-être extrayez ceci: http://github.com/oneclick/rubyinstaller/wiki/development-kit

et giorgian est correct, faites attention ici:

  1. version rubis: vous devez installer la version "installateur ruby", mais pas la version .zip ou une autre version .

  2. déballer dans le répertoire Ruby (par exemple, C: \ Ruby, de sorte que vous aurez C: \ Ruby \ DevKit;

  3. Si vous avez installé Ruby d'un autre fichier de configuration (qui n'est pas ruby-installer), vous devez le supprimer, puis installer ruby ​​avec l'installateur ruby, ne pas simplement l'écraser

  4. pas besoin d'installer VC6, il ne fonctionnera pas avec d'autres version d'installation de ruby ​​(ce qui n'est pas Si vous l'avez installé juste pour l'installation du ruby-gem, je vous suggère de le retirer

  5. n o besoin d'installer MinGW, parce que dev-kit est basé dessus.

J'ai passé près de 15 heures pour résoudre ce problème. et il est maintenant temps de dire que "ruby-installer" + "kit de dev" est notre choix pour construire la gemme native.

0

Sur Windows Server 2003 (Ruby 1.8.6), la vanille:

gem install bcrypt-ruby 

a fonctionné comme un charme.
Notez que si vous voulez l'utiliser avec Rails, vous devez utiliser:

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

Pour moi, une partie du problème était dans le fait que j'avais installé Ruby2.0.0 x64 (je suis en cours d'exécution Win8), qui semblait incompatible avec le compilateur gcc que j'utilisais.

J'ai enlevé mon installation rubis, et installé rubis 1.9.3 avec Bundler, Rails et quelques autres paquets avec le railsInstaller d'utilisation (http://railsinstaller.org/) et je suis maintenant en mesure d'installer bcrypt-ruby :)

1

Pour moi, ce qui suit travaillé

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

Merci pour ce commentaire. Le devkit est absolument nécessaire, mais seulement si je désinstalle puis réinstalle avec la partie --platform = ruby ​​ça marche (sinon ça n'appelle pas le devkit). –

+1

En outre, maintenant je dois spécifier la version exacte de la gemme que je veux installer - quelque chose dans mon système exige 3.1.1. –

Questions connexes