views:

2209

answers:

7

I know mongrel is the default server for "script/server" but when I do that command I get webrick. (I had it working before with mongrel). Now when I tell is to use mongrel ("script/server mongrel") the server fails to start up in the terminal. I get this:

$ script/server mongrel
^C/Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel/gems.rb:11:in `require': Interrupt
    from /Library/Ruby/Gems/1.8/gems/mongrel-1.1.5/lib/mongrel.rb:17
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `gem_original_require'
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `require'
    from /Library/Ruby/Gems/1.8/gems/activesupport-2.3.3/lib/active_support/dependencies.rb:156:in `require'
    from /Library/Ruby/Gems/1.8/gems/activesupport-2.3.3/lib/active_support/dependencies.rb:521:in `new_constants_in'
    from /Library/Ruby/Gems/1.8/gems/activesupport-2.3.3/lib/active_support/dependencies.rb:156:in `require'
    from /Library/Ruby/Gems/1.8/gems/rack-1.0.0/lib/rack/handler/mongrel.rb:1
    from /Library/Ruby/Gems/1.8/gems/rack-1.0.0/lib/rack/handler.rb:17:in `const_get'
    from /Library/Ruby/Gems/1.8/gems/rack-1.0.0/lib/rack/handler.rb:17:in `get'
    from /Library/Ruby/Gems/1.8/gems/rack-1.0.0/lib/rack/handler.rb:17:in `each'
    from /Library/Ruby/Gems/1.8/gems/rack-1.0.0/lib/rack/handler.rb:17:in `get'
    from /Users/devinross14/.gem/ruby/1.8/gems/rails-2.3.3/lib/commands/server.rb:45
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require'
    from script/server:3

I just upgraded to snow leopard if that helps...

A: 

I'm having the same issue - it's an upgrade thing. I've been reading a couple blogs and it seems like the only way to solve this is install mongrel from source. The guy on this blog got it working supposedly: http://void-design.net/2009/08/05/ruby-191-mysql-and-a-snow-leopard/

Jarsen
+4  A: 

I managed to get it to work without installing mongrel from source. All I had to do was reinstall the gem.

Alternatively you can use thin, which is a mongrel alternative:

sudo gem install thin
thin start

That might get you going in the meantime while the snow leopard dust settles.

jonnii
awesome tip - thanks!
Jarsen
A: 

I found that reinstalling all gems seems to have fixed the issue for me. Follow through to this link for the terminal command goodness: http://geekystuff.net/2009/1/14/remove-all-ruby-gems

Replace all the uninstall commands with install commands though:

gem list | cut -d" " -f1 | xargs sudo gem install

Bear in mind this installs the latest of everything, so if you have a specific version you need then you'll probably need to tweak things accordingly.

Brian
A: 

The easiest way to have no dramas with your dev server is just use passenger with either nginx or apache. You can then also really easily run a few apps in dev mode without messing about on the command line to see which is running.

railsninja
+4  A: 

It took a while but I finally got mongrel (1.1.5) working on Snow Leopard. It's easy to do:

sudo gem uninstall mongrel
sudo gem uninstall fastthread
sudo gem install mongrel

It seems that fastthread needed to be recompiled as well.

Jay
A: 

first comment is not that bad but it worked for me with:

$ sudo gem uninstall mongrel
$ sudo gem uninstall fastthread
$ sudo gem install mongrel
$ sudo gem install fastthread

all removed gems have to be restored.

Seems that OS X copied the gems while updating, both were twice in list...

A: 

fastthread reinstall didn't work for me on SnowLeopard, but thin seems to work a treat!

Deano