Corrigir Ruby 1.9.x OpenSSL Segfault no OS X

Se você instalar Ruby 1.9.2 ou 1.9.3 no OS X, você pode executar o temido segfault OpenSSL:

~/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:799: [BUG] Segmentation fault
ruby
1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin11.4.0]

A versão do OpenSSL que acompanha o OS X 10.6 e 10.7 é mais antiga e causa esse problema.

Existem várias opções para resolver isso. Aqui estão alguns:

MacPorts

port selfupdate
port install openssl

port install libyaml


# RVM
rvm install
1.9.3 --with-openssl-dir=/opt/local --with-opt-dir=/opt/local

# rbenv
CONFIGURE_OPTS
='--with-openssl-dir=/opt/local --with-opt-dir=/opt/local' rbenv install 1.9.3-p194

Homebrew

brew update
brew install openssl


# RVM
rvm install
1.9.3 --with-openssl-dir=`brew --prefix openssl`

# rbenv
CONFIGURE_OPTS
="--with-openssl-dir=`brew --prefix openssl`" rbenv install 1.9.3-p194

RVM

rvm pkg install openssl
rvm reinstall
1.9.3 --with-openssl-dir=$rvm_path/usr