2013-10-09 8 views
8

Je continue à recevoir cette erreur lors de l'installation du gem wdm depuis cygwin. Est-ce que quelqu'un a eu le même problème et sait maintenant le réparer. Merci. (Je tente d'installer Garde gem)Erreurs Installation du gem wdm dans cygwin

$ gem install wdm 
Building native extensions. This could take a while... 
ERROR: Error installing wdm: 
ERROR: Failed to build gem native extension. 

    /usr/bin/ruby.exe extconf.rb 
checking for main() in -lkernel32... yes 
checking for windows.h... yes 
checking for ruby.h... yes 
checking for HAVE_RUBY_ENCODING_H... yes 
creating Makefile 

make 
gcc -I. -I/usr/include/ruby-1.9.1/i386-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -DHAVE_WINDOWS_H -DHAVE_RUBY_H -DHAVE_CONST_HAVE_RUBY_ENCODING_H -ggdb -O2 -pipe -fno-strict-aliasing -o entry.o -c entry.c 
gcc -I. -I/usr/include/ruby-1.9.1/i386-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -DHAVE_WINDOWS_H -DHAVE_RUBY_H -DHAVE_CONST_HAVE_RUBY_ENCODING_H -ggdb -O2 -pipe -fno-strict-aliasing -o memory.o -c memory.c 
gcc -I. -I/usr/include/ruby-1.9.1/i386-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -DHAVE_WINDOWS_H -DHAVE_RUBY_H -DHAVE_CONST_HAVE_RUBY_ENCODING_H -ggdb -O2 -pipe -fno-strict-aliasing -o monitor.o -c monitor.c 
gcc -I. -I/usr/include/ruby-1.9.1/i386-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -DHAVE_WINDOWS_H -DHAVE_RUBY_H -DHAVE_CONST_HAVE_RUBY_ENCODING_H -ggdb -O2 -pipe -fno-strict-aliasing -o queue.o -c queue.c 
gcc -I. -I/usr/include/ruby-1.9.1/i386-cygwin -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -DHAVE_WINDOWS_H -DHAVE_RUBY_H -DHAVE_CONST_HAVE_RUBY_ENCODING_H -ggdb -O2 -pipe -fno-strict-aliasing -o rb_change.o -c rb_change.c 
rb_change.c: In function ‘extract_absolute_path_from_notification’: 
rb_change.c:47:16: error: ‘_MAX_FNAME’ undeclared (first use in this function) 
rb_change.c:47:16: note: each undeclared identifier is reported only once for each function it appears in 
rb_change.c:47:33: error: ‘_MAX_EXT’ undeclared (first use in this function) 
Makefile:206: recipe for target `rb_change.o' failed 
make: *** [rb_change.o] Error 1 

Gem files will remain installed in /usr/lib/ruby/gems/1.9.1/gems/wdm-0.1.0 for inspection. 
Results logged to /usr/lib/ruby/gems/1.9.1/gems/wdm-0.1.0/ext/wdm/gem_make.out 
+0

juste rencontré un problème similaire en essayant d'installer guard-rubocop sur une machine Windows. 'gem install iff' ne parvient pas à construire. – nifr

Répondre

3

Un de mes collègues a eu un problème avec wdm l'autre jour.

Nous l'avons corrigé en téléchargeant le Ruby DevKit (Je ne sais pas si vous l'avez déjà installé).

J'ai trouvé quelques pas assez décent par étapes en ligne, je vais les coller ici - espérons qu'ils aident

kit de développement est ici: http://rubyinstaller.org/downloads/

  1. Téléchargez le kit de développement et l'installer dans par exemple c : \ devkit.
  2. Ouvrez une fenêtre de commande et tapez c :. Pour modifier les dossiers, tapez cd devkit. Tapez ruby ​​dk.rb init pour générer le fichier config.yml à utiliser par la suite. Les Rubis installés seront listés ici (seuls ceux qui sont installés par un paquet RubyInstaller sont détectés actuellement). Cela doit être fait qu'une seule fois.
  3. Enfin le type, l'installation de ruby ​​dk.rb pour DevKit améliore vos rubis installés. Cela doit être fait qu'une seule fois.

Vérifiez votre environnement Ruby est correctement utilise le DevKit en exécutant:

gem install wdm --platform=ruby

Il est essentiel que vous incluez l'option --platform = rubis pour forcer RubyGems construire la pierre précieuse indigène plutôt que potentiellement l'installation d'une gemme binaire incorrecte.