From: Brian Candler Date: 2009-03-31T18:13:33+09:00 Subject: Re: REG: How can we debug a ruby script Something in your environment is making ruby do -rubygems (require 'rubygems') Perhaps the RUBYOPT environment variable is set, because I can replicate your problem like this: $ export RUBYOPT=-rubygems $ ruby -rdebug fact.rb Debug.rb Emacs support available. /usr/local/lib/site_ruby/1.8/ubygems.rb:10:require 'rubygems' (rdb:1) So if this is the case, solution 1 is simply to unset the RUBYOPT variable. Solution 2 is to set a breakpoint at the start of your program. $ ruby -rdebug fact.rb Debug.rb Emacs support available. /usr/local/lib/site_ruby/1.8/ubygems.rb:10:require 'rubygems' (rdb:1) b fact.rb:1 Set breakpoint 1 at fact.rb:1 (rdb:1) cont Breakpoint 1, toplevel at fact.rb:1 fact.rb:1:def fact(n) (rdb:1) n fact.rb:9:print fact(2), "\n" (rdb:1) n 2 $ Solution 3 is to require rubygems *before* requiring debug, because when it has been required once, it won't be required again: $ ruby -rubygems -rdebug fact.rb Debug.rb Emacs support available. fact.rb:1:def fact(n) (rdb:1) This third one probably involves the least work. -- Posted via http://www.ruby-forum.com/.