2011-09-17 11 views
44

No solía tener ningún problema con el rubí, las gemas y todo lo relacionado. Pero después de instalar X Code Developer Tools y actualizar a Lion, las gemas no se instalan.Rubygems no se instala en OS X Lion

Recibo el siguiente error por cada gema. Este es el mensaje para sqlite como ejemplo:

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

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb 
mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/ruby.h 

Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/sqlite3-1.3.4 for inspection. 
Results logged to /Library/Ruby/Gems/1.8/gems/sqlite3-1.3.4/ext/sqlite3/gem_make.out 

¿Qué salió mal? ¿Como arreglarlo?

Respuesta

4

No es una solución directa a su problema, pero le sugiero que use rvm para instalar gemas y gemas nuevos. Eso debería cuidar de él.

+0

RVM funciona muy bien, lo tengo en León con cero problemas – jschorr

0

Hola, lo siento, no puedo probar esta respuesta, pero le sugiero que cambie las rutas de búsqueda predeterminadas en su bashrc y extconf.rb ya que los archivos de la Biblioteca parecen moverse en Lion.

(PS si se quiere trabajar con la versión predeterminada 1,8, RVM sería una molestia innecesaria)

+0

¿Cómo y dónde puedo hacer esto? –

+0

Abre una ventana de terminal, elige su editor favorito y edita su .bashrc (generalmente en la ruta/Users/ /. Bashrc) – robustus

+0

Sé cómo hacerlo. Simplemente no sé qué camino debo agregar allí. –

1

Es necesario tener instalado XCode, que incluye ruby.h, así como algunos otros archivos importantes necesarios para compilar otras gemas nativas.

+1

Welcom to SO. Si leo correctamente la pregunta del OP, él declara que tiene XCode instalado. –

0

Actualizo a la última versión de xcode, eso me solucionó el problema. Asegúrate de que xcodebuild esté en tu camino.

ejecutando xcodebuild -version en una ventana de terminal debe salir 4.2.1 (4.x al menos).

75

tuve que instalar las herramientas de línea de comandos en la última versión de Xcode-(4.3.1) y

sudo gem install rails 

funcionó de maravilla.

Para instalar las herramientas de línea de comandos, vaya a Xcode Preferencias> Descargas o utilizar el siguiente comando en el terminal (gracias @Purell):

xcode-select --install 
+2

esto funcionó para mí también – chendriksen

+1

+1 - ¡lo mismo aquí! – Bungle

+6

Sí.Para instalar las herramientas de línea de comandos, vaya a Preferencias de XCode> Descargas. – mattandrews

12

me enfrentaba mismo problema al intentar instalar rieles en mi león. Así es como pude resolverlo.

Instalar RVM

$ curl https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer | bash -s stable

Instalar OSX-gcc-instalador

https://github.com/kennethreitz/osx-gcc-installer

Instalada nueva versión de rubí

rvm install 1.9.3

tecleados por la siguiente comando para mostrar los requisitos

rvm requirements

Para utilizar una RVM instalado Rubí por defecto, en lugar del rubí sistema:

rvm system ; rvm gemset export system.gems ; rvm 1.9.3 ; rvm gemset import system.gems # migrate your gems rvm alias create default 1.9.3

raíles instalados:

sudo gem install rails

¡Mi Mac ahora se lee para los rieles! ¡¡HURRA!!

4

durante la instalación de rieles que tenían el error:

no puede encontrar archivos de cabecera para el rubí en /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/ruby. h

Como ya había instalado Xcode, que acababa de instalar las herramientas de línea de comandos para resolver este problema

16

estoy usando Mavericks y Ruby 2.0.0 y también me consiguió este error (mkmf.rb no puede encontrar archivos de encabezado) cuando instala gemas. Resolví este problema creando algunos enlaces simbólicos en Terminal.

#First install developer tools again: 
xcode-select --install 

#Create symbolic link to Ruby include (updated for 10.9) 
sudo ln -s /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0 /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/include 

#Create symbolic link to config.h (updated for 10.9) 
sudo ln -s /System/Library/Frameworks/Ruby.framework/Versions/2.0/Headers/ruby/config.h /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/ruby/config.h 
+0

Esto lo solucionó, ¡muchas gracias! – Macondo2Seattle

+1

el primer comando fue suficiente para mí. – cyrilchampier

+0

La actualización a Mavericks parecía haber desinstalado las herramientas de desarrollo. Ejecutar el primer comando de David soluciona este problema para mí. No es necesario crear un enlace simbólico. – emispowder

0

Después de una actualización de OS-asegúrese de que lo hace aceptar la licencia X-Code, incluso cuando se ha utilizado la línea de comandos-herramientas antes. Solo entonces algunos archivos de encabezado estarán disponibles. Para aceptar la licencia, debe ejecutar X-Code una vez.

0

Me olvidé de ejecutarlo con el comando sudo.

sudo gem install sqlite3

no

:

gem install sqlite3