2012-05-10 12 views
8

Quando si crea una nuova applicazione Rails, ottengo il seguente errore:Rails Segmentation Fault su Mac OSX con RVM

/usr/local/rvm/rubies/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-darwin10.8.0] 

Tutti i binari sembrano file da generare, ma l'errore di cui sopra è ancora lì. Qualsiasi pensiero o suggerimento sarebbe molto apprezzato.

risposta

16

Mi sembra un problema con LCCM GCC, provare con GNU GCC.

Il modo più semplice per farlo è installare osx-gcc-installazione e reinstallare rubino:

rvm reinstall 1.9.3 

EDIT2: è anche possibile usare gcc-4.2 disponibili tramite homebrew/MacPorts, installare CommandLineTools e seguire istruzioni da rvm requirements.

EDIT 1: Googled intorno e venire attraverso questo http://www.seqmedia.com/2012/05/08/frustrations-abound-rvm-vs-macports-and-the-bug-segmentation-fault/ - e mi ricordo che era già accennato a me openssl in OSX è rotto, il modo più semplice per controllare sarebbe:

rvm get stable 
rvm autolibs enable 
rvm reinstall 1.9.3 
+0

Grazie, mpapis. Ho installato osx-gcc-installer e ho reinstallato ruby, ma ho ancora lo stesso errore. –

+2

check 'rvm ruby-1.9.3-p194 do ruby ​​-rrbconfig -e" mette RbConfig :: CONFIG ['CC'] "' - deve puntare a 'gcc-4.2', se non lo fa per favore prova' rvm reinstallare 1.9.3 --with-gcc = gcc-4.2' – mpapis

+0

Ciao mpapis, grazie ancora per aver risposto! Ecco il risultato del controllo: $ rvm ruby-1.9.3-p194 do ruby ​​-rrbconfig -e "mette RbConfig :: CONFIG ['CC']" Una versione RVM 1.13.4 (master) è già installata 1.13 .4 (stabile) è caricato. Effettuare una delle seguenti operazioni: * 'rvm reload' * aprire una nuova shell * 'echo rvm_auto_reload_flag = 1 >> ~/.rvmrc' # per ricarica automatica con msg. * 'echo rvm_auto_reload_flag = 2 >> ~/.rvmrc' # per ricarica automatica silenziosa. –

15

I googled intorno per questo problema ed ha trovato le seguenti formule magiche:

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

dispiace non avere un collegamento ad una sorgente, ma non riesco a ricordare quale sito web ha avuto la formula vincente. Il nocciolo della questione è che i link ruby ​​contro una versione errata di openssl così facendo fa in modo che rvm installi la propria versione di openssl e link ruby ​​contro questo.

+0

ha funzionato per me grazie! –

+0

Grazie, mi ha salvato la vita! – michelegera

+0

Funziona - grazie. –

2

è riuscito a risolvere il problema in questo modo:

Aggiornamento RVM: rvm get testa
installare le librerie richieste: requisiti RVM corrono
reinstallazione 1.9.3: rvm reinstallare 1.9.3

Funziona per un po 'e sembra davvero pulito

0

Ho risolto questo bug rimuovendo il mio gemmamente installato gemme e reinstallando il cinturone Heroku. Non so perché, ma ha funzionato per me.

Problemi correlati