Ruby 1.9.3
La parte de Gemfile
#...............
gem "pony"
gem "bcrypt-ruby", :require => "bcrypt"
gem "nokogiri"
#..................
Cuando intento instalar gemas, aparece un error
alex@ubuntu:~/$ bundle
Fetching gem metadata from http://rubygems.org/.........
Fetching gem metadata from http://rubygems.org/..
Enter your password to install the bundled RubyGems to your system:
#####............................................................
Installing bcrypt-ruby (3.0.1) with native extensions
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/usr/bin/ruby1.9.1 extconf.rb
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError)
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from extconf.rb:36:in `<main>'
Gem files will remain installed in /home/alex/.bundler/tmp/5526/gems/bcrypt-ruby-3.0.1 for inspection.
Results logged to /home/alex/.bundler/tmp/5526/gems/bcrypt-ruby-3.0.1/ext/mri/gem_make.out
An error occurred while installing bcrypt-ruby (3.0.1), and Bundler cannot continue.
Make sure that `gem install bcrypt-ruby -v '3.0.1'` succeeds before bundling.
Entonces estoy haciendo esto
sudo gem install bcrypt-ruby -v '3.0.1'
Building native extensions. This could take a while...
ERROR: Error installing bcrypt-ruby:
ERROR: Failed to build gem native extension.
/usr/bin/ruby1.9.1 extconf.rb
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError)
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from extconf.rb:36:in `<main>'
Gem files will remain installed in /var/lib/gems/1.9.1/gems/bcrypt-ruby-3.0.1 for inspection.
Results logged to /var/lib/gems/1.9.1/gems/bcrypt-ruby-3.0.1/ext/mri/gem_make.out
y obteniendo un error también.
¿Qué me perdí?
Respuestas:
Hay preguntas similares:
Por lo general, la solución es:
O, si eso no funciona, dependiendo de su versión de ruby , ejecute algo como:
Debería solucionar su problema.
¿Sigue sin funcionar? Pruebe lo siguiente después de instalar ruby-dev:
fuente
ruby1.9.1-dev
tuve que tambiénsudo apt-get install make
. ¡Gracias!sudo apt-get install ruby
(sin especificar la versión), entonces no necesita preocuparse demasiado por su versión si solo instalasudo apt-get install ruby-dev
sudo apt-get install gcc make
Para WSL (Windows Subsystem for Linux) necesita el
build-essential
paquete de instalación :fuente
Tuve el mismo problema al intentar instalar jquery-rails. La solución fue
fuente
zlib1g-dev
le dará lo que necesita aquí, o al menos lo hizo por mí.Descubrí que necesitaba instalar otra versión de ruby. Entonces ejecutando el comando
e intente instalar la extensión
Si tiene problemas en los que le dice que no tiene g ++, puede ejecutar el siguiente comando para instalarlo
fuente
Acabo de terminar una persecución de ganso salvaje de 2 horas tratando de resolver esto. Ninguna de las respuestas publicadas funcionó para mí. Estoy en una Mac (Mojave Versión 10.14.6, Xcode Versión 11.3).
Resulta que faltaban los encabezados del archivo ruby, así que tuve que ejecutar
open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
Al principio no funcionó para mí porque la versión de CommandLineTools que había instalado no tenía la carpeta "Paquetes". Así que desinstalé y reinstalé así:
rm -rf /Library/Developer/CommandLineTools
xcode-select --install
Luego ejecuté el comando anterior nuevamente:
open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
Después de instalar el error fue corregido!
fuente
En caso de que alguien en el futuro tuviera este problema, estoy usando una Mac y solo tuve que instalar las herramientas de línea de comandos usando 'xcode-select --install'
fuente
ruby-dev
esté instaladomake
esté instaladogem install pg
, también necesitará instalar liblibpq-dev
(sudo apt-get install libpq-dev
).fuente
También ayuda a garantizar que libmysqlclient-dev esté instalado (Ubuntu 14.04)
fuente
Esto funcionó para mí.
bundle config --global build.snappy --with-opt-dir="$(brew --prefix snappy)"
fuente
En Mac, para mí esto funciona:
fuente
Después de buscar un poco la solución, resulta que se necesita el paquete -dev, no solo ruby1.8. Entonces, si tienes ruby1.9.1 haciendo
o para instalar la versión genérica de ruby, use (según el comentario de @lamplightdev):
Debería arreglarlo.
Intente localizar mkmf para ver si el archivo está realmente allí.
fuente