En cas d'erreur lors de la tentative d'installation du périphérique Gem, l'installation s'arrête sur le joyau bcrypt-Ruby:
$ gem install bcrypt-Ruby
Error installing bcrypt-Ruby:
ERROR: Failed to build gem native extension.
J'utilise OSX 10.6.7 avec Ruby sous RVM. J'ai réinstallé la dernière version de xcode et réinstallé Ruby 64bit, Rails et tous les gems.
J'ai eu le même problème lors de l'installation sous OSX 10.7.3. Lors de l'installation de la gemme, mon message d'erreur était le suivant:
Building native extensions. This could take a while...
ERROR: Error installing bcrypt-Ruby:
ERROR: Failed to build gem native extension.
creating Makefile
make
compiling bcrypt_ext.c
make: /usr/bin/gcc-4.2: No such file or directory
make: *** [bcrypt_ext.o] Error 1
On dirait que la gemme recherche gcc-4.2 mais je n'avais qu'un fichier appelé gcc. Maintenant que je venais d'installer le dernier Xcode (4.3), je savais que mon compilateur C était conforme mais que la gem avait codé en dur gcc-4.2. Donc ma solution était:
Sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.2
La liaison a fonctionné comme un charme.
On dirait qu'il pourrait y avoir des informations manquantes ici - pour moi, cela était dû à une installation de gcc par brassage. gcc était dans/usr/bin, mais pas gcc-4.2. Alors je viens de faire ce qui suit:
$ cd /usr/bin
$ Sudo ln -s gcc gcc-4.2
qui crée un lien, gcc-4.2
, recherché par la gemme et remontant à gcc
.
J'espère que cela pourra aider.
Ruby-dev doit être installé avant bcrypt-Ruby. Si vous utilisez Ubuntu, lancez
Sudo apt-get install Ruby1.9.1-dev
ou
Sudo apt-get install Ruby1.8-dev
basé sur la version Ruby.
J'utilise RVM et j'ai toujours ce problème à chaque installation de gems avec des extensions natives (bcrypt-Ruby, bson-ext, json, eventmachine, nokogiri, linecache19, etc.)
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
La seule façon pour que je puisse enfin faire fonctionner les choses était de désinstaller puis de réinstaller Ruby.
rvm remove 1.9.2
rvm install 1.9.2
Merci au conseil de @doublebee ici: https://github.com/flori/json/issues/78#issuecomment-1499920
Sudo apt-get installer Ruby1.9.1-dev
un charme fou pour moi! Merci beaucoup
Vous devez uniquement utiliser rvm (gestionnaire de versions Ruby).
rvm uninstall 1.9.3
et alors
rvm install 1.9.3
semble que cette erreur est sur la construction de la version 1.9.3, mais désinstaller et réinstaller résoudre le problème avec bcrypt-Ruby 3.0.1
Eh bien, cela fonctionne avec Ruby 1.9.2 sous RVM sur MacOS 10.6.7:
$ Ruby -v
Ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-darwin10.6.0]
$ gem install bcrypt-Ruby
Fetching: bcrypt-Ruby-2.1.4.gem (100%)
Building native extensions. This could take a while...
Successfully installed bcrypt-Ruby-2.1.4
1 gem installed
Installing ri documentation for bcrypt-Ruby-2.1.4...
Installing RDoc documentation for bcrypt-Ruby-2.1.4...
Essayez rvm notes
et voyez si cela indique que vous devez installer quoi que ce soit.
Si vous utilisez la version 1.8, les packages requis pour bcrypt se trouvent dans le kit de développement. Essayez d'utiliser
$Sudo apt-get install Ruby1.8-dev
puis
$gem install bcrypt-Ruby
Je pense que vous devez réinstaller le bijou bundler.
gem install bundler
puis bundle install
Ce correctif fonctionne pour moi sur Ubuntu sous OSX et utilise homebrew, macports, peu importe:
Sudo apt-get install Ruby1.9.1-dev