2012-02-19 23 views
20

Przechodzę do drugiej edycji Ruby on Rails Tutorial (http://ruby.railstutorial.org/). Podążam za każdym krokiem, więc używam Ruby 1.9.3 i kiedy uruchamiam "instalację pakietu" w moim projekcie Railsowym, wystąpił błąd z dużym śladem błędu, który zaczyna się od tego:Błąd podczas instalacji "pakietu instalacji" przy użyciu Ruby 1.9.3

/Użytkownicy/sebasoga/.rvm/rubies/ruby-1.9.3-p125/lib/ruby ​​/ 1.9.1/net/http.rb: 799: [BŁĘDY] Błąd segmentacji błędów 1.9.3p125 (2012-02-16 rewizja 34643) [x86_64-darwin10.8.0]

Używam teraz Ruby 1.9.2 i działa dobrze, ale czy nie powinno to również działać z Ruby 1.9.3?

+0

Możliwe, jeśli masz zainstalowane MacPorts: http://stackoverflow.com/questions/9136694 – sampablokuper

Odpowiedz

42

Ten pracował dla mnie:

rvm pkg install iconv 
rvm pkg install openssl 
rvm reinstall 1.9.3 --with-openssl-dir=~/.rvm/usr --with-iconv-dir=~/.rvm/usr 

Opiera się w roztworze na this blog. Wypróbowałem też model here, który jest oparty na macportach i nie działał. Ale szczerze mówiąc, nie obchodziło mnie aktualizowanie moich Macportów, więc może dlatego to nie zadziałało.

Również znalazłem te dwa inne zagadnienia opisujące problem i dawać sugestie: 4050, 4766

+3

Pomogło mi, dwa razy – morphium

+0

Poszedłem za króliczą dziurą i wypróbowałem niektóre inne metody, ale ostatecznie instalując openssl jako rvm pkg było tym, co zadziałało także dla mnie. Jeśli nie używasz iconv, zignoruj ​​tę instalację. Możesz także użyć $ rvm_path/usr, jeśli twoja instalacja rvm znajduje się w nietypowej lokalizacji. – tlbrack

+0

Dzięki za poprawkę @tlback. – pedrofurla

0

Wygląda na to, że występuje problem z pakietem w wersji 1.9.3 i koderze 4.2, jeśli to robisz? Spotted gdzieś na SO, że powrót do 4.1 jest poprawka. Byłam z 1.9.2

6

W moim Gemfile, zastępując

source 'https://rubygems.org' 

tej linii z

source 'http://rubygems.org' 

rozwiązało problem . Mam nadzieję że to pomoże!

+0

Dzięki! Poszukuje OpenSSL, ale plakat nie ma zainstalowanego pakietu z Ruby, stąd akceptowana odpowiedź. Jednak zastępując https przez http, możesz całkowicie usunąć potrzebę OpenSSL bez rekompilacji Rubiego. – Schrockwell

Powiązane problemy