Instalando Ruby e Gems com extensões nativas no OS X Mavericks

Eu postei anteriormente sobre como atualizar seu ambiente ruby ​​para OS X Mavericks: https://coderwall.com/p/5awmcq . Eu estava ajudando um amigo a atualizar seu ambiente usando as mesmas etapas, mas continuamos enfrentando problemas ao construir gemas com extensões nativas.

Aparentemente, isso ocorreu devido a um conflito entre o RVM (gerenciador de versĂŁo ruby) e a versĂŁo instalada do GCC.

Depois de muitos becos sem saĂ­da na tentativa de instalar o pacote de gem, acabei descobrindo esta questĂŁo do SO: http://stackoverflow.com/questions/15204141/adding-usr-bin-gcc-4-2-to-path -instalando-ruby .

A Ăşnica resposta (no momento da escrita) era executar:

rvm requirements

Isso derrama uma tonelada de informações úteis sobre a configuração do rvm. No caso da máquina em que estava trabalhando, faltavam várias coisas para que o rvm pudesse instalar o ruby ​​e compilar as gemas com sucesso.

Primeiro, removi a versĂŁo existente do ruby:

rvm remove ruby-1.9.3

Em seguida, seguiu as instruções detalhadas retornadas ao executar rvm requirements. No meu caso:

brew install libksba

rvm install
1.9.3
rvm system
; rvm gemset export system.gems ; rvm 1.9.3 ; rvm gemset import system.gems

Reabra as janelas do seu terminal. Em seguida, instale o gcc-4.2:

Xcode and gcc:

Right now Ruby requires gcc to compile, but Xcode 4.2 and later no longer ship with gcc. Instead they ship with llvm-gcc (to which gcc is a symlink) and clang, neither of which are supported for building Ruby. Xcode 4.1 was the last version to ship gcc, which was /usr/bin/gcc-4.2.

Xcode 4.1 and earlier:
- Ruby will build fine.

Xcode 4.2 and later (including Command Line Tools for Xcode):
- If you have gcc-4.2 (and friends) from an earlier Xcode version, Ruby will build fine.
- If you don't have gcc-4.2, you have two options to get it:
* Install apple-gcc42 from Homebrew

* Install osx-gcc-installer


Homebrew:


If you are using Homebrew, you can install the apple-gcc42 and required libraries from homebrew/dupes:


brew update

brew tap homebrew/dupes

brew install autoconf automake apple-gcc42

rvm pkg install openssl


Xcode 4.2+ install or/and Command Line Tools for Xcode is required to provide make and other tools.


osx-gcc-installer:


If you don'
t use Homebrew, you can download and install osx-gcc-installer: https://github.com/kennethreitz/osx-gcc-installer.

Warning: Installing osx-gcc-installer on top of a recent Xcode is known to cause problems, so you must uninstall Xcode before installing osx-gcc-installer. Afterwards you may install Xcode 4.2+ or Command Line Tools for Xcode if you desire.

Mais informações: http://stackoverflow.com/questions/8032824/cant-install-ruby-under-lion-with-rvm-gcc-issues

Depois de executar essas etapas, o ruby ​​foi instalado de forma limpa e o bundler foi capaz de instalar gems com extensões nativas. Há muitas perguntas sobre o SO e várias correções recomendadas, mas essas foram as etapas que funcionaram para mim.