ナビゲーション:前へ 上へ 次へ
3.8
3.8
dbx90
の用例
これはCOMMON
ブロックとモジュールを含むFortranコードのデバッグにdbx90
を使用した例です。
デバッグ対象のファイルは‘fh4.f90
’という名前で次の内容を含んで
います:
MODULE fh4 REAL r END MODULE fh4 PROGRAM fh4_prog USE fh4 COMMON/fh4com/i i = 2 CALL sub PRINT *,i,r END PROGRAM fh4_prog SUBROUTINE sub USE fh4 COMMON/fh4com/i r = 0.5*i i = i*3 END SUBROUTINE sub
それをまず-g90 オプションを使ってコンパイルし、次にdbx90のもとで 実行します:
% nagfor -g90 -o fh4 fh4.f90 % dbx90 fh4 nAG dbx90 Version 5.2(22) Copyright 1995-2008 The Numerical Algorithms Group Ltd., Oxford, U.K. GNU gdb Red Hat Linux (6.5-15.fc6rh) Copyright (C) 2006 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db lib rary "/lib/libthread_db.so.1". (dbx90)
ルーチンSUB
中にブレークポイントを設定しプログラムを実行します。
(dbx90) stop in sub [1] stop in SUB in file "fh4.f90" (dbx90) run stopped in SUB at line 16 in file "fh4.f90" 16 r = 0.5*i (dbx90)
COMMON
中、あるいは使用(USE
)されたモジュール中の変数(局所変数)
の値をプリントします。
(dbx90) print i I = 2 (dbx90) next 17 i = i*3 (dbx90) print r R = 1 (dbx90) next 18 END SUBROUTINE sub (dbx90) print i I = 6
変数に値を代入することもできます。
(dbx90) assign i = 7 I = 7 (dbx90) cont 7 1.0000000 Program exited normally. (dbx90) quit %