5

I have a Rails app using Ruby 1.8.7 and I'm getting this error when running in debug mode and setting a break point:

54749: Exception in DebugThread loop: undefined method `errmsg' for #<Debugger::ControlState:0x10e3def28>
Backtrace:
/Users/ohad/.rvm/gems/ruby-1.8.7-p371/gems/ruby-debug-0.10.4/cli/ruby-debug/command.rb:188:in `errmsg'
  from: /Users/ohad/.rvm/gems/ruby-1.8.7-p371/gems/ruby-debug-0.10.4/cli/ruby-debug/commands/breakpoints.rb:81:in `execute'
  from: /Users/ohad/.rvm/gems/ruby-1.8.7-p371/gems/ruby-debug-ide-0.4.17.beta16/lib/ruby-debug-ide/ide_processor.rb:89:in `process_commands'
  from: /Users/ohad/.rvm/gems/ruby-1.8.7-p371/gems/ruby-debug-ide-0.4.17.beta16/lib/ruby-debug-ide/ide_processor.rb:86:in `catch'
  from: /Users/ohad/.rvm/gems/ruby-1.8.7-p371/gems/ruby-debug-ide-0.4.17.beta16/lib/ruby-debug-ide/ide_processor.rb:86:in `process_commands'
  from: /Users/ohad/.rvm/gems/ruby-1.8.7-p371/gems/ruby-debug-ide-0.4.17.beta16/lib/ruby-debug-ide.rb:121:in `start_control'
  from: /Users/ohad/.rvm/gems/ruby-1.8.7-p371/gems/ruby-debug-ide-0.4.17.beta16/lib/ruby-debug-ide.rb:103:in `initialize'
  from: /Users/ohad/.rvm/gems/ruby-1.8.7-p371/gems/ruby-debug-ide-0.4.17.beta16/lib/ruby-debug-ide.rb:103:in `new'
  from: /Users/ohad/.rvm/gems/ruby-1.8.7-p371/gems/ruby-debug-ide-0.4.17.beta16/lib/ruby-debug-ide.rb:103:in `start_control'
  from: /Users/ohad/.rvm/gems/ruby-1.8.7-p371/gems/ruby-debug-ide-0.4.17.beta16/lib/ruby-debug-ide.rb:65:in `start_server'
  from: /Users/ohad/.rvm/gems/ruby-1.8.7-p371/gems/ruby-debug-ide-0.4.17.beta16/lib/ruby-debug-ide.rb:69:in `prepare_debugger'
  from: /Users/ohad/.rvm/gems/ruby-1.8.7-p371/gems/ruby-debug-ide-0.4.17.beta16/lib/ruby-debug-ide.rb:83:in `debug_program'
  from: /Users/ohad/.rvm/gems/ruby-1.8.7-p371/gems/ruby-debug-ide-0.4.17.beta16/bin/rdebug-ide:109
  from: -e:1:in `load'
  from: -e:1

I've added ruby-debug to my Gemfile:

group :development do
  gem "inaction_mailer", '0.6', :require => 'inaction_mailer/force_load'
  gem 'ruby-debug', :require => nil
  # gem 'bullet'
  # gem "ruby-growl"
end
Andrew Marshall
  • 89,426
  • 20
  • 208
  • 208
WebQube
  • 6,772
  • 9
  • 40
  • 76
  • Perhaps this could help you: http://stackoverflow.com/questions/11672201/unable-to-debug-in-rubymine-4-5-using-ruby-1-9-3 – Casper Feb 09 '13 at 01:17
  • hi @Casper, thanks for the quick response. I saw that post, and I don't have the `debugger` gem installed. I have edited in my gemfile on dev group – WebQube Feb 09 '13 at 01:24

1 Answers1

5

You have ruby-debug gem installed, remove it.

See this answer, only 2 debug gems are needed (versions will be different for Ruby 1.8):

ruby-debug-base (0.10.5.rc3)
ruby-debug-ide (0.4.17.beta16)
Community
  • 1
  • 1
CrazyCoder
  • 350,772
  • 137
  • 894
  • 800
  • hi, Tried to removed ruby-debug using `gem unistall ruby-debug` - worked, thanks. The thing is, I need to keep the gemfile with `gem ruby-debug` for my other team mates who debug using the console. tried requiring only on rubymine in `development.rb` using `require "ruby-debug" unless ENV["RM_INFO"]` but failed to work – WebQube Feb 09 '13 at 03:14
  • wait, my mistake, I see it's working with the hack `require "ruby-debug" unless ENV["RM_INFO"]` – WebQube Feb 09 '13 at 03:33
  • Try [this code](http://youtrack.jetbrains.com/issue/RUBY-11800#comment=27-417333), just change the gem name. Conditional `require` should help with this problem. – CrazyCoder Feb 09 '13 at 03:33
  • I ran with ruby-debug stuck in there for weeks. Then I rebuilt my gems & it broke. Tx! – Phlip Jan 03 '14 at 22:13