2012-05-10 9 views
8

Podczas tworzenia nowej szyny aplikacji, pojawia się następujący błąd:Szyny Segmentacja usterki na Mac OSX z 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] 

Wszystkie poręcze pojawiają pliki mają zostać wygenerowane, ale błąd powyżej jest nadal. Wszelkie przemyślenia i sugestie będą bardzo mile widziane.

Odpowiedz

16

Wygląda mi na problem z LLVM GCC, spróbuj z GNU GCC.

Najłatwiej zrobić to zainstalować OSX-gcc-instalator i zainstaluj rubinowy:

rvm reinstall 1.9.3 

Edit2: możliwe jest również użycie gcc-4.2 dostępna poprzez homebrew/MacPorts, zainstaluj CommandLineTools i postępuj instrukcje od rvm requirements.

EDIT 1: Skończyłem googled wokół i zetknąć się z tym http://www.seqmedia.com/2012/05/08/frustrations-abound-rvm-vs-macports-and-the-bug-segmentation-fault/ - i pamiętam, że już wspomniano mi openssl w OSX jest łamany, najprostszym sposobem sprawdzenia byłoby:

rvm get stable 
rvm autolibs enable 
rvm reinstall 1.9.3 
+0

Dziękuję, mpapis. Zainstalowałem osx-gcc-installer i ponownie zainstalowałem ruby, ale wciąż ten sam błąd. –

+2

sprawdź 'rvm ruby-1.9.3-p194 do ruby ​​-rrbconfig -e" umieszcza RbConfig :: CONFIG ['CC'] "' - musi wskazywać na 'gcc-4.2', jeśli nie, spróbuj' rvm ponownie zainstaluj 1.9.3 --with-gcc = gcc-4.2' – mpapis

+0

Witaj mpapis, jeszcze raz dziękuję za odpowiedź! Oto wynik sprawdzenia: $ rvm ruby-1.9.3-p194 do ruby ​​-rrbconfig -e "umieszcza RbConfig :: CONFIG ['CC']" Wersja RVM 1.13.4 (master) jest jeszcze zainstalowana 1.13 .4 (stabilny) jest załadowany. Proszę wykonać jedną z następujących czynności: * "przeładowanie rvm" * otworzenie nowej powłoki * 'echo rvm_auto_reload_flag = 1 >> ~/.rvmrC# # dla automatycznego przeładowania z msg. * 'echo rvm_auto_reload_flag = 2 >> ~/.rvmrC# # dla cichego automatycznego przeładowania. –

15

I google wokół tego problemu i znaleźć następujące magiczne zaklęcia:

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

Niestety nie link do źródła, ale nie mogę sobie przypomnieć, która strona miała zwycięską formułę. Istotą tego jest to, że ruby ​​łączy się ze złą wersją openssl, więc robienie tego w ten sposób sprawia, że ​​rvm instaluje własną wersję openssl i łączy ruby ​​z tym.

+0

pracował dla mnie dzięki! –

+0

Dzięki, to uratowało mi życie! – michelegera

+0

Działa - dzięki. –

2

Udało się naprawić to tak:

Aktualizacja RVM: RVM bardzo głowy
zainstalować wymagane biblioteki: wymagania RVM prowadzone
Ponowna instalacja 1.9.3: RVM ponownie zainstalować 1.9.3

Działa przez chwilę i wydaje się być naprawdę czysty

0

Naprawiłem ten błąd przez usunięcie mojego gloabalnie zainstalowane klejnoty i ponowna instalacja paska narzędziowego Heroku. Nie wiem, dlaczego, ale zadziałało to dla mnie.