2012年01月09日

RVMとDeviseとomniauthとsslエラーのお話

多分jquery-railsとかそのあたりでも起こるような opensslがメインなお話。

Mac で rvm で普通に

$ rvm install 1.9.2

とかでrubyの1.9.2-p290を入れておいて deviseでomniauthでもにゃもにゃ書いて さあいざTwitterログインを試してみよう! ってやったら

/Users/mugijiru/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/net/http.rb:678: [BUG] Segmentanfault
ruby 1.9.2p290 (2011-07-09 revision 32553) [i386-darwin9.8.0]

-- control frame ----------
c:0056 p:---- s:0315 b:0315 l:000314 d:000314 CFUNC  :connect
c:0055 p:0011 s:0312 b:0312 l:000cd8 d:000311 BLOCK  /Users/mugijiru/.rvm/rubies/ruby-1.9
2-p290/lib/ruby/1.9.1/net/http.rb:678
c:0054 p:0111 s:0310 b:0310 l:001298 d:001298 METHOD /Users/mugijiru/.rvm/rubies/ruby-1.9
2-p290/lib/ruby/1.9.1/timeout.rb:58
c:0053 p:0026 s:0298 b:0298 l:000297 d:000297 METHOD /Users/mugijiru/.rvm/rubies/ruby-1.9
2-p290/lib/ruby/1.9.1/timeout.rb:89
c:0052 p:0444 s:0292 b:0292 l:000cd8 d:000cd8 METHOD /Users/mugijiru/.rvm/rubies/ruby-1.9
2-p290/lib/ruby/1.9.1/net/http.rb:678
c:0051 p:0011 s:0284 b:0284 l:000283 d:000283 METHOD /Users/mugijiru/.rvm/rubies/ruby-1.9
2-p290/lib/ruby/1.9.1/net/http.rb:637
c:0050 p:0048 s:0281 b:0281 l:000280 d:000280 METHOD /Users/mugijiru/.rvm/rubies/ruby-1.9
2-p290/lib/ruby/1.9.1/net/http.rb:626
c:0049 p:0025 s:0278 b:0278 l:000277 d:000277 METHOD /Users/mugijiru/.rvm/rubies/ruby-1.9
2-p290/lib/ruby/1.9.1/net/http.rb:1168
c:0048 p:0165 s:0271 b:0271 l:000270 d:000270 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/oauth-0.4.5/lib/oauth/consumer.rb:164
c:0047 p:0028 s:0257 b:0257 l:000256 d:000256 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/oauth-0.4.5/lib/oauth/consumer.rb:197
c:0046 p:0161 s:0247 b:0247 l:000246 d:000246 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/oauth-0.4.5/lib/oauth/consumer.rb:139
c:0045 p:0028 s:0240 b:0240 l:000239 d:000239 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/omniauth-oauth-1.0.0/lib/omniauth/strategies/oauth.rb:28
c:0044 p:0279 s:0235 b:0235 l:000234 d:000234 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/omniauth-1.0.1/lib/omniauth/strategy.rb:194
c:0043 p:0209 s:0232 b:0232 l:000231 d:000231 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/omniauth-1.0.1/lib/omniauth/strategy.rb:165
c:0042 p:0019 s:0228 b:0228 l:000227 d:000227 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/omniauth-1.0.1/lib/omniauth/strategy.rb:148
c:0041 p:0044 s:0224 b:0224 l:000223 d:000223 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/omniauth-1.0.1/lib/omniauth/builder.rb:34
c:0040 p:0014 s:0220 b:0220 l:000211 d:000219 BLOCK  /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/warden-1.0.6/lib/warden/manager.rb:35
c:0039 p:---- s:0218 b:0218 l:000217 d:000217 FINISH
c:0038 p:---- s:0216 b:0216 l:000215 d:000215 CFUNC  :catch
c:0037 p:0086 s:0212 b:0212 l:000211 d:000211 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/warden-1.0.6/lib/warden/manager.rb:34
c:0036 p:0015 s:0207 b:0207 l:000206 d:000206 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/actionpack-3.0.10/lib/action_dispatch/middleware/best_standards_support.rb:17
c:0035 p:0093 s:0200 b:0200 l:000199 d:000199 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/actionpack-3.0.10/lib/action_dispatch/middleware/head.rb:14
c:0034 p:0155 s:0193 b:0193 l:000192 d:000192 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/rack-1.2.4/lib/rack/methodoverride.rb:24
c:0033 p:0046 s:0187 b:0187 l:000186 d:000186 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/actionpack-3.0.10/lib/action_dispatch/middleware/params_parser.rb:21
c:0032 p:0054 s:0182 b:0182 l:000181 d:000181 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/actionpack-3.0.10/lib/action_dispatch/middleware/flash.rb:182
c:0031 p:0027 s:0175 b:0175 l:000174 d:000174 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/actionpack-3.0.10/lib/action_dispatch/middleware/session/abstract_store.rb:149
c:0030 p:0015 s:0164 b:0164 l:000163 d:000163 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/actionpack-3.0.10/lib/action_dispatch/middleware/cookies.rb:302
c:0029 p:0014 s:0156 b:0156 l:001d28 d:000155 BLOCK  /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/activerecord-3.0.10/lib/active_record/query_cache.rb:32
c:0028 p:0019 s:0154 b:0154 l:000153 d:000153 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/activerecord-3.0.10/lib/active_record/connection_adapters/abstract/query_cache
rb
c:0027 p:0051 s:0150 b:0150 l:000149 d:000149 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/activerecord-3.0.10/lib/active_record/query_cache.rb:12
c:0026 p:0019 s:0146 b:0146 l:001d28 d:001d28 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/activerecord-3.0.10/lib/active_record/query_cache.rb:31
c:0025 p:0015 s:0142 b:0142 l:000141 d:000141 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/activerecord-3.0.10/lib/active_record/connection_adapters/abstract/connection_
oo
c:0024 p:0029 s:0138 b:0138 l:001718 d:000137 BLOCK  /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/actionpack-3.0.10/lib/action_dispatch/middleware/callbacks.rb:46
c:0023 p:0155 s:0136 b:0136 l:000135 d:000135 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/activesupport-3.0.10/lib/active_support/callbacks.rb:416
c:0022 p:0011 s:0126 b:0126 l:001718 d:001718 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/actionpack-3.0.10/lib/action_dispatch/middleware/callbacks.rb:44
c:0021 p:0015 s:0122 b:0122 l:000121 d:000121 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/rack-1.2.4/lib/rack/sendfile.rb:106
c:0020 p:0049 s:0112 b:0112 l:000111 d:000111 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/actionpack-3.0.10/lib/action_dispatch/middleware/remote_ip.rb:48
c:0019 p:0017 s:0108 b:0108 l:000107 d:000107 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/actionpack-3.0.10/lib/action_dispatch/middleware/show_exceptions.rb:47
c:0018 p:0027 s:0100 b:0100 l:000099 d:000099 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/railties-3.0.10/lib/rails/rack/logger.rb:13
c:0017 p:0032 s:0096 b:0096 l:000095 d:000095 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/rack-1.2.4/lib/rack/runtime.rb:17
c:0016 p:0052 s:0087 b:0087 l:000086 d:000086 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/activesupport-3.0.10/lib/active_support/cache/strategy/local_cache.rb:72
c:0015 p:0014 s:0083 b:0083 l:000077 d:000082 BLOCK  /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/rack-1.2.4/lib/rack/lock.rb:11
c:0014 p:0019 s:0081 b:0081 l:000080 d:000080 METHOD <internal:prelude>:10
c:0013 p:0054 s:0078 b:0078 l:000077 d:000077 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/rack-1.2.4/lib/rack/lock.rb:11
c:0012 p:0193 s:0073 b:0073 l:000072 d:000072 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/actionpack-3.0.10/lib/action_dispatch/middleware/static.rb:30
c:0011 p:0032 s:0066 b:0066 l:000065 d:000065 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/railties-3.0.10/lib/rails/application.rb:168
c:0010 p:0021 s:0062 b:0062 l:000061 d:000061 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/railties-3.0.10/lib/rails/application.rb:77
c:0009 p:---- s:0057 b:0057 l:000056 d:000056 FINISH
c:0008 p:0015 s:0055 b:0055 l:000054 d:000054 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/railties-3.0.10/lib/rails/rack/log_tailer.rb:14
c:0007 p:0015 s:0050 b:0050 l:000049 d:000049 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/rack-1.2.4/lib/rack/content_length.rb:13
c:0006 p:0338 s:0042 b:0042 l:000041 d:000041 METHOD /Users/mugijiru/.rvm/gems/ruby-1.9.2
p290/gems/rack-1.2.4/lib/rack/handler/webrick.rb:52
c:0005 p:0257 s:0030 b:0030 l:000029 d:000029 METHOD /Users/mugijiru/.rvm/rubies/ruby-1.9
2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:111
c:0004 p:0393 s:0020 b:0020 l:000019 d:000019 METHOD /Users/mugijiru/.rvm/rubies/ruby-1.9
2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:70
c:0003 p:0126 s:0009 b:0009 l:00168c d:000008 BLOCK  /Users/mugijiru/.rvm/rubies/ruby-1.9
2-p290/lib/ruby/1.9.1/webrick/server.rb:183
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
c:0001 p:---- s:0002 b:0002 l:000001 d:000001 TOP
---------------------------
-- Ruby level backtrace information ----------------------------------------
/Users/mugijiru/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/server.rb:183:in `bloc
 in start_thread'
 /Users/mugijiru/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:70:in `r
 n'
 /Users/mugijiru/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/webrick/httpserver.rb:111:in `
 ervice'
 /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/rack-1.2.4/lib/rack/handler/webrick.rb:52:
 n `service'
 /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/rack-1.2.4/lib/rack/content_length.rb:13:i
  `call'
  /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.0.10/lib/rails/rack/log_tailer.
  b:14:in `call'
  /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.0.10/lib/rails/application.rb:7
  :in `method_missing'
  /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.0.10/lib/rails/application.rb:1
  8:in `call'
  /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.0.10/lib/action_dispatch/midd
  eware/static.rb:30:in `call'
  /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/rack-1.2.4/lib/rack/lock.rb:11:in `call'
  <internal:prelude>:10:in `synchronize'
  /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/rack-1.2.4/lib/rack/lock.rb:11:in `block i
   call'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.0.10/lib/active_support/ca
   he/strategy/local_cache.rb:72:in `call'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/rack-1.2.4/lib/rack/runtime.rb:17:in `call
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.0.10/lib/rails/rack/logger.rb:1
   :in `call'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.0.10/lib/action_dispatch/midd
   eware/show_exceptions.rb:47:in `call'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.0.10/lib/action_dispatch/midd
   eware/remote_ip.rb:48:in `call'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/rack-1.2.4/lib/rack/sendfile.rb:106:in `ca
   l'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.0.10/lib/action_dispatch/midd
   eware/callbacks.rb:44:in `call'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.0.10/lib/active_support/ca
   lbacks.rb:416:in `_run_call_callbacks'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.0.10/lib/action_dispatch/midd
   eware/callbacks.rb:46:in `block in call'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.0.10/lib/active_record/conn
   ction_adapters/abstract/connection_pool.rb:354:in `call'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.0.10/lib/active_record/quer
   _cache.rb:31:in `call'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.0.10/lib/active_record/quer
   _cache.rb:12:in `cache'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.0.10/lib/active_record/conn
   ction_adapters/abstract/query_cache.rb:28:in `cache'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.0.10/lib/active_record/quer
   _cache.rb:32:in `block in call'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.0.10/lib/action_dispatch/midd
   eware/cookies.rb:302:in `call'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.0.10/lib/action_dispatch/midd
   eware/session/abstract_store.rb:149:in `call'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.0.10/lib/action_dispatch/midd
   eware/flash.rb:182:in `call'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.0.10/lib/action_dispatch/midd
   eware/params_parser.rb:21:in `call'
   /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/rack-1.2.4/lib/rack/methodoverride.rb:24:i
    `call'
    /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.0.10/lib/action_dispatch/midd
    eware/head.rb:14:in `call'
    /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.0.10/lib/action_dispatch/midd
    eware/best_standards_support.rb:17:in `call'
    /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/warden-1.0.6/lib/warden/manager.rb:34:in `
    all'
    /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/warden-1.0.6/lib/warden/manager.rb:34:in `
    atch'
    /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/warden-1.0.6/lib/warden/manager.rb:35:in `
    lock in call'
    /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/omniauth-1.0.1/lib/omniauth/builder.rb:34:
    n `call'
    /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/omniauth-1.0.1/lib/omniauth/strategy.rb:14
    :in `call'
    /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/omniauth-1.0.1/lib/omniauth/strategy.rb:16
    :in `call!'
    /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/omniauth-1.0.1/lib/omniauth/strategy.rb:19
    :in `request_call'
    /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/omniauth-oauth-1.0.0/lib/omniauth/strategi
    s/oauth.rb:28:in `request_phase'
    /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/oauth-0.4.5/lib/oauth/consumer.rb:139:in `
    et_request_token'
    /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/oauth-0.4.5/lib/oauth/consumer.rb:197:in `
    oken_request'
    /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/oauth-0.4.5/lib/oauth/consumer.rb:164:in `
    equest'
    /Users/mugijiru/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/net/http.rb:1168:in `request'
    /Users/mugijiru/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/net/http.rb:626:in `start'
    /Users/mugijiru/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/net/http.rb:637:in `do_start'
    /Users/mugijiru/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/net/http.rb:678:in `connect'
    /Users/mugijiru/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/timeout.rb:89:in `timeout'
    /Users/mugijiru/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/timeout.rb:58:in `timeout'
    /Users/mugijiru/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/net/http.rb:678:in `0/gems/oauth-0.4.5/lib/oauth/consumer.rb:197:in `
    oken_request'
    /Users/mugijiru/.rvm/gems/ruby-1.9.2-p290/gems/oauth-0.4.5/lib/oauth/consumer.rb:164:in `
    equest'
    /Users/mugijiru/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/net/http.rb:1168:in `request'
    /Users/mugijiru/.ies.
    Bug reports are welcome.
    For details: http://www.ruby-lang.org/bugreport.html

    zsh: abort      rails s

こうなった。

これの解決に苦しめられたけど結局

$ rvm remove 1.9.2
$ rvm install 1.9.2 --with-openssl-dir=/opt/local

したら解決した。というメモ。

一応MacPortsでopensslを入れてある環境なので

$ sudo port upgrade openssl

とかしておいた方がいいかもしれないしそういう細かいことは知らないけど とりあえず動きましたよっと。

posted by 麦汁 at 11:11 | Comment(0) | TrackBack(0) | rails | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:


この記事へのトラックバック
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。