前川です。

Rubyのデバッガのブレークポイントを
[ファイル名:ファイル内の行番号]で設定したのですが、
指定したBPでは、とまりませんでした。

そこで、以下を実施し、該当のプログラムに入った時点で、
b nn としたところ、BPでとめることが出来ました。

b [ファイル名:ファイル内の行番号]では、設定できないのでしょうか?

ユーザファイルに入るまで、デバッガのfin,n コマンドで進めて、
ブレークポイントを設定し、デバッグしなければならないのでしょうか?

ファイルは、
C:\Apache2.2\htdocs\qmsPotalShip\confirmation\myclassMySQLTest.rb

ファイル内の行番号は、19

この場合、デバッガ起動後の設定は、
b [C:/Apache2.2/htdocs/qmsPotalShip/confirmation/myclassMySQLTest.rb:19]

または、
b [C:\Apache2.2\htdocs\qmsPotalShip\confirmation\myclassMySQLTest.rb:19]

だと思いますが、ご指導いただきたく、お願いします。

また、デバッガで起動した場合、必ず
c:/ruby/lib/ruby/site_ruby/1.8/ubygems.rb:10:require 'rubygems'
(rdb:1)
が、表示されます。
プログラミング Ruby 言語編 第2版 p139では、Emacsの次の行は、
ユーザファイル(t.rb:・・・・)と記述されています。
此の点につきましても、ご指導いただきますようお願いします。


bpの場所が悪いのか、確認するために、目的のファイルまで、fin、nコマンドで
実行した結果が、以下です。

Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\M118543>cd
C:\Apache2.2\htdocs\qmsPotalShip\confirmation

C:\Apache2.2\htdocs\qmsPotalShip\confirmation>ruby -r debug
myclassMySQLTest.rb
Debug.rb
Emacs support available.

c:/ruby/lib/ruby/site_ruby/1.8/ubygems.rb:10:require 'rubygems' #必ず表示さ
れます。設定がまずいのでしょうか?
(rdb:1) fin
c:/ruby/lib/ruby/1.8/rational.rb:78: `undefined method `gcd' for
Rational(1, 2):Rational' (NoMethodError)
        from c:/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:1123:in `require'
        from c:/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:1123
        from c:/ruby/lib/ruby/site_ruby/1.8/ubygems.rb:10:in `require'
        from c:/ruby/lib/ruby/site_ruby/1.8/ubygems.rb:10
c:/ruby/lib/ruby/1.8/rational.rb:78:    gcd = num.gcd(den)
(rdb:1) fin
c:/ruby/lib/ruby/1.8/date.rb:523:    def self.time_to_day_fraction(h, min,
s)
(rdb:1) fin
c:/ruby/lib/ruby/1.8/date.rb:1451:class DateTime < Date #ここから、nコマン
ドで実施
(rdb:1) n
c:/ruby/lib/ruby/1.8/date.rb:1631:class Time
(rdb:1) n
c:/ruby/lib/ruby/1.8/date.rb:1652:class Date
(rdb:1)
     〜〜中略 以降 n で実施〜〜
(rdb:1) n
c:/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:1131:plugins = Gem.find_files
'rubygems_plugin'
(rdb:1) n
c:/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:1133:plugins.each do |plugin|
(rdb:1) w
--> #1 c:/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:1133
(rdb:1) n
myclassMySQLTest.rb:11:require
"C:/Apache2.2/htdocs/qmsPotalShip/myclass.rb" #共通クラス(含むRubyのクラ
ス)#目的のファイル
(rdb:1) b 19 # BPの設定
Set breakpoint 1 at myclassMySQLTest.rb:19
(rdb:1) b 23 # BPの設定
Set breakpoint 2 at myclassMySQLTest.rb:23
(rdb:1) w
--> #1 myclassMySQLTest.rb:11
(rdb:1) c  #実施
Content-Type: text/html

Breakpoint 1, toplevel at myclassMySQLTest.rb:19  #<= 設定した19で停止
myclassMySQLTest.rb:19:mydb =
MyClassDB.db_connect('localhost','root','dbkey','ndesign')
(rdb:1) c
#<Mysql:0xa17f354>
Breakpoint 2, toplevel at myclassMySQLTest.rb:23 # 次の23で停止
myclassMySQLTest.rb:23:res = mydb.list_tables() #テーブル名を返す
(rdb:1) p mydb
#<Mysql:0xa17f354>
(rdb:1) p res
nil
(rdb:1)

了