2011-05-25 17 views
31

Conseguir un error al intentar instalar el legado gema, la instalación está parando en la gema bcrypt-rubí:¿Por qué obtengo un error de instalación de joya de bcrypt-ruby?

$ gem install bcrypt-ruby 
Error installing bcrypt-ruby: 
ERROR: Failed to build gem native extension. 

estoy corriendo OSX 10.6.7 con Ruby bajo RVM. He reinstalado la última versión de xcode & reinstalado Ruby 64bit, Rails y todas las gemas.

Respuesta

1

Bueno, funciona con Ruby 1.9.2 bajo RVM en 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... 

Trate rvm notes y ver si se le dice necesidad de instalar nada.

1

Si está utilizando la versión 1.8, los paquetes necesarios para bcrypt se encuentran en el paquete de desarrollo. Trate de usar

$sudo apt-get install ruby1.8-dev 

continuación

$gem install bcrypt-ruby 
+0

La pregunta fue sobre OSX. – yfeldblum

2

estoy usando RVM & seguía teniendo este problema cada vez que la instalación de gemas con extensiones nativas (bcrypt-rubí, BSON-ext, JSON, EventMachine, nokogiri, linecache19 , etc.)

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

única manera que finalmente pude hacer las cosas de trabajo era que desinstalar y volver a instalar el rubí.

rvm remove 1.9.2

rvm install 1.9.2

Gracias a la punta de @doublebee aquí: https://github.com/flori/json/issues/78#issuecomment-1499920

31

que tenían el mismo problema al instalar en OSX 10.7.3. Al instalar la gema, mi mensaje de error fue:

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 

Parece que la joya está buscando gcc-4.2, pero yo sólo tenía un archivo llamado gcc. Ahora que acababa de instalar el último Xcode (4.3), sabía que mi compilador de C era compatible, pero la gema tenía gcc-4.2 codificado en él. Así que mi solución era:

sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.2 

La vinculación funcionó de maravilla.

+0

¿En qué parte del sistema de archivos ejecuta el comando ln -s? – roborourke

+0

tan obvio, gran respuesta! – thatmiddleway

4

Requiere instalar ruby-dev antes de instalar bcrypt-ruby. Si está utilizando Ubuntu, ejecute

sudo apt-get install ruby1.9.1-dev 

o

sudo apt-get install ruby1.8-dev 

basado en la versión de Ruby.

6

Parece que podría haber alguna información faltante aquí - para mí, esto fue debido a una instalación de brew de gcc. gcc estaba en/usr/bin, pero no en gcc-4.2.Así que acabo de hacer lo siguiente:

$ cd /usr/bin 
$ sudo ln -s gcc gcc-4.2 

que crea un vínculo, gcc-4.2, que la gema está buscando que se remonta a gcc.

Espero que ayude.

2

sólo es necesario utilizar RVM (rubí administrador de versiones)

rvm uninstall 1.9.3 

y luego

rvm install 1.9.3 

ve este error está en la acumulación de RVM 1.9.3, pero desinstalar y volver a instalar solucionar el problema bcrypt-rubí 3.0.1

0

Esta corrección funcione para mí en ubuntu osx sobre el uso de homebrew, lo macports:

sudo apt-get install ruby1.9.1-dev 
2

sudo apt-get install

encanto whoked ruby1.9.1-dev para mí! Muchas gracias

0

Creo que es necesario volver a instalar la gema bundler.

gem install bundler y luego bundle install

Cuestiones relacionadas