From: Ralph Shnelvar on
I'm still having trouble with the debugger and debugging


Here's part of my source ...

- - - -
1) #!/usr/bin/env ruby
2) require 'rubygems'
3) require 'ruby-debug'
4) Debugger.start
5)
6) debugger
- - - -


Here's my session
- - - -
f:\UltraDedup>ruby -rdebug UltraDedup.rb
Debug.rb
Emacs support available.

UltraDedup.rb:2:require 'rubygems'
(rdb:1) b 3
Set breakpoint 1 at UltraDedup.rb:3
(rdb:1) b 4
Set breakpoint 2 at UltraDedup.rb:4
(rdb:1) b 6
Set breakpoint 3 at UltraDedup.rb:6
(rdb:1) c
F:/InstantRails-2.0-win/ruby/lib/ruby/1.8/rational.rb:78: `undefined method `gcd' for Rational(1, 2):Rational' (NoMethodError)
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems/config_file.rb:220:in `load_file'
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems/config_file.rb:168:in `initialize'
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:384:in `new'
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:384:in `configuration'
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:634:in `path'
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:68:in `installed_spec_directories'
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:58:in `from_installed_gems'
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:881:in `source_index'
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems/gem_path_searcher.rb:81:in `init_gemspecs'
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems/gem_path_searcher.rb:13:in `initialize'
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:839:in `new'
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:839:in `searcher'
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:838:in `synchronize'
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:838:in `searcher'
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:478:in `find_files'
from F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:1103
from UltraDedup.rb:2:in `require'
from UltraDedup.rb:2
F:/InstantRails-2.0-win/ruby/lib/ruby/1.8/rational.rb:78: gcd = num.gcd(den)
(rdb:1) quit
- - - -


As you can see ... I either don't stop where I think I'm stopping or I am getting this strange stack before I hit line 3.

Any thoughts???

Damn ... I don't have this problem in an Instant Rails environment.

I am using Instant Rails to develope a Ruby/FXRuby program. Is that a no-no?



From: rocky on
ruby -rdebug UltraDedup.rb

invokes the debugger that comes with Ruby, not ruby-debug. To invoke ruby-debug run as rdebug.


From: Ralph Shnelvar on
Rocky,

Friday, July 16, 2010, 5:10:04 AM, you wrote:

r> ruby -rdebug UltraDedup.rb

r> invokes the debugger that comes with Ruby, not ruby-debug. To invoke ruby-debug run as rdebug.

May the gods smile on your house and your family.

Rocky, what does ruby-debug do that the native debugger does not?

I'm not groking this at all.

Ralph


From: Roger Pack on

> Rocky, what does ruby-debug do that the native debugger does not?

Faster, less bugs.

Also, if you want to stop where you exception is thrown I believe you
can run

rdebug:1 > catch Exception

and it will stop after it's thrown.
--
Posted via http://www.ruby-forum.com/.

From: Caleb Clausen on
On 7/16/10, rocky <user(a)compgroups.net/> wrote:
> ruby -rdebug UltraDedup.rb
>
> invokes the debugger that comes with Ruby, not ruby-debug. To invoke
> ruby-debug run as rdebug.

Furthermore, if you run your ruby program via the rdebug command, you
needn't modify your source code at all.

It's unfortunate that the 2 different debuggers both use the word
rdebug somehow in their invocation.... With the original debug.rb, you
start debugging your program via 'ruby -rdebug' whereas with
ruby-debug gem, you start debugging via 'rdebug'. This makes it more
confusing than it ought to be.