开发者

Rails segmentation fault when starting server?

Trying to get my rails 3 environment up and running and I keep encountering an error I can't get around. Any help would be great appreciated!

Here is the problem:

Patrick-Scotts-MacBook-Pro:~ PJS$ cd hope_app
Patrick-Scotts-MacBook-Pro:hope_app PJS$ rails server
/Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/sqlite3-ruby-1.3.1/lib/sqlite3/sqlite3_native.bundle: [BUG] Segmentation fault
ruby 1.9.2dev (2010-07-11 revision 28618) [x86_64-darwin10.4.0]

-- control frame ----------
c:0026 p:-541019732 s:0075 b:0075 l:000074 d:000074 TOP   
c:0025 p:---- s:0073 b:0073 l:000072 d:000072 CFUNC  :require
c:0024 p:0029 s:0069 b:0069 l:000065 d:000068 BLOCK  /Users/PJS/.rvm/gems/ruby-1.9.2-    rc2/gems/sqlite3-ruby-1.3.1/lib/sqlite3.rb:6
c:0023 p:0035 s:0066 b:0066 l:000065 d:000065 TOP    /Users/PJS/.rvm/gems/ruby-1.9.2- rc2/gems/sqlite3-ruby-1.3.1/lib/sqlite3.rb:2
c:0022 p:---- s:0064 b:0064 l:000063 d:000063 FINISH
c:0021 p:---- s:0062 b:0062 l:000061 d:000061 CFUNC  :require
c:0020 p:0026 s:0058 b:0058 l:000039 d:000057 BLOCK  /Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/bundler-1.0.0.rc.2/lib/bundler/runtime.rb:64
c:0019 p:---- s:0055 b:0055 l:000054 d:000054 FINISH
c:0018 p:---- s:0053 b:0053 l:000052 d:000开发者_如何学C052 CFUNC  :each
c:0017 p:0080 s:0050 b:0050 l:000039 d:000049 BLOCK  /Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/bundler-1.0.0.rc.2/lib/bundler/runtime.rb:62
c:0016 p:---- s:0045 b:0045 l:000044 d:000044 FINISH
c:0015 p:---- s:0043 b:0043 l:000042 d:000042 CFUNC  :each
c:0014 p:0046 s:0040 b:0040 l:000039 d:000039 METHOD /Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/bundler-1.0.0.rc.2/lib/bundler/runtime.rb:51
c:0013 p:0021 s:0036 b:0036 l:000035 d:000035 METHOD /Users/PJS/.rvm/gems/ruby-1.9.2-   rc2/gems/bundler-1.0.0.rc.2/lib/bundler.rb:114
c:0012 p:0079 s:0032 b:0032 l:000031 d:000031 TOP    /Users/PJS/hope_app/config/application.rb:7
c:0011 p:---- s:0030 b:0030 l:000029 d:000029 FINISH
c:0010 p:---- s:0028 b:0028 l:000027 d:000027 CFUNC  :require
c:0009 p:0016 s:0024 b:0024 l:000015 d:000023 BLOCK  /Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/railties-3.0.0.rc/lib/rails/commands.rb:28
c:0008 p:---- s:0021 b:0021 l:000020 d:000020 FINISH
c:0007 p:---- s:0019 b:0019 l:000018 d:000018 CFUNC  :tap
c:0006 p:0468 s:0016 b:0016 l:000015 d:000015 TOP    /Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/railties-3.0.0.rc/lib/rails/commands.rb:27
c:0005 p:---- s:0012 b:0012 l:000011 d:000011 FINISH
c:0004 p:---- s:0010 b:0010 l:000009 d:000009 CFUNC  :require
c:0003 p:0061 s:0006 b:0006 l:001598 d:0013a8 EVAL   script/rails:6
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
c:0001 p:0000 s:0002 b:0002 l:001598 d:001598 TOP   
---------------------------
-- Ruby level backtrace information ----------------------------------------
script/rails:6:in `<main>'
script/rails:6:in `require'
/Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/railties-3.0.0.rc/lib/rails/commands.rb:27:in `<top (required)>'
/Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/railties-3.0.0.rc/lib/rails/commands.rb:27:in `tap'
/Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/railties-3.0.0.rc/lib/rails/commands.rb:28:in `block in <top (required)>'
/Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/railties-3.0.0.rc/lib/rails/commands.rb:28:in `require'
/Users/PJS/hope_app/config/application.rb:7:in `<top (required)>'
/Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/bundler-1.0.0.rc.2/lib/bundler.rb:114:in `require'
/Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/bundler-1.0.0.rc.2/lib/bundler/runtime.rb:51:in `require'
/Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/bundler-1.0.0.rc.2/lib/bundler/runtime.rb:51:in `each'
/Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/bundler-1.0.0.rc.2/lib/bundler/runtime.rb:62:in `block in require'
/Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/bundler-1.0.0.rc.2/lib/bundler/runtime.rb:62:in `each'
/Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/bundler-1.0.0.rc.2/lib/bundler/runtime.rb:64:in `block (2 levels) in require'
/Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/bundler-1.0.0.rc.2/lib/bundler/runtime.rb:64:in `require'
/Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/sqlite3-ruby-1.3.1/lib/sqlite3.rb:2:in `<top (required)>'
/Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/sqlite3-ruby-1.3.1/lib/sqlite3.rb:6:in `rescue in <top (required)>'
/Users/PJS/.rvm/gems/ruby-1.9.2-rc2/gems/sqlite3-ruby-1.3.1/lib/sqlite3.rb:6:in `require'

-- C level backtrace information -------------------------------------------


As per this post, I've reinstalled sqlite3 gem and the problem disappeared:

gem uninstall sqlite3
gem install sqlite3

My software versions:

% ruby -v
ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-darwin11.2.0]
% rails -v
Rails 3.2.1


I found that closing my shell completely (closing all windows and then right-clicking on the terminal icon in the dock and choosing close) and then restarting the terminal fixed this issue.

I had been creating and destroying, using and changing gemsets for a while before I saw this problem. I suspect things just got confused was all.


I had a similar problem with 1.9.3. I had to:

  1. unstall sqlite3 and reinstall
  2. For extra measure uninstalled rake and reinstalled it.

Works now.


I have exactly the same versions you have and I don't see this. But I'm not on Macbook Pro.

It's hard to say whether this is a Ruby 1.9.2 problem (as it's still not considered stable enough to be officially released) or whether this is actually a bug in the Sqlite 3 gem. Exactly the same bug was reported against the gem for a slightly earlier version of Ruby 1.9.2.

You might try dropping back to Sqlite version 1.3.0 or back to Ruby 1.9.1 temporarily until the issue resolves itself. Hardly a satisfactory answer but at least you could be productive again.


I have also hit by same problem in sqlite3-ruby 1.3.2 After repeatedly removing installing and uninstalling same sqlite3-ruby

I finally removed completely rvm dir

rm -rf /usr/local/lib/rvm /usr/local/bin/{r*,gem-ruby-1.9.2-p136,irb-ruby-1.9.2-p136,testrb-ruby-1.9.2-p136} /usr/local/rvm

then again installed it,

I am suspecting

libsqlite3-0 libsqlite3-dev sqlite3

all three must be installed before rvm installation, because same steps I have followed in other machine it is working fine.

Yes this is not the proper solution.


I was having a similar problem - it looks like Rails is trying to use a different version of Ruby (1.9.2dev instead of 1.9.2-rc2). You can confirm this with

head -1 `which rails`

Change that first line, or reinstall the gem with gem uninstall rails && gem install rails.

(P.S. thanks to venj for the solution here)


I got this error when I declared a "test" group twice in my Gemfile. Once I got rid of the second declaration no more segmentation error.


I was having an issue where I was still getting the seg fault after having uninstalled and re-installed the sqlite3 gem and the homebrew sqlite3 package. Turned out that even though rvm was using ruby 1.9.3 rake was still pointing at the 1.8.7 install that comes with lion.

$rake db:create
/Users/jessesanford/.rvm/gems/ruby-1.9.3-p125/gems/sqlite3-1.3.6/lib/sqlite3/sqlite3_native.bundle: [BUG] Segmentation fault
ruby 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]

I am not sure how rake got installed in the ruby gems library for 1.9.3 with a shebang script header pointed at 1.8.7 but whatever the reason re-installing rake corrected it and now things are running smoothly.


It seems like we're mostly trying out random solutions at the moment.

Here's mine:

Since I run my development server on port 80, I need to issue the rails server command with sudo. This sometimes leads to ownership problems with certain files in test environment.

And it seems that everytime I have a problem running my app's test suite, my development server crashes with the famous "You may have encountered a bug in the Ruby interpreter or extension libraries"-error.

In both cases clearing Rails' temporary cache (sudo bundle exec rails tmp:cache:clear) fixes the problem.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜