|
|
1.1 root 1: .TI F77/DEBUGGING "Sep. 4, 1985"
2: Debugging Aids for F77 Programs
3:
4: The first step in debugging is to understand the error message you
5: are getting. See "help f77 error_msgs" for advice on that.
6:
7: There are several utilities that can be used in debugging.
8: If you have a core dump, use the debugger, dbx, to look at the core dump.
9: If you compiled and loaded with the -g flag, dbx can be used to tell
10: the line at which your program failed and to display the values of
11: variables. Dbx can also be used to set break points or single step a
12: program and do interactive debugging.
13:
14: If you did not compile with the -g flag,
15: dbx will still tell you which subroutines were active at the time
16: of the failure. See "help f77 dbx" and "man dbx" for more information.
17:
18: If you might be exceeding the bounds of an array,
19: you can use f77's -C flag to check for subscripts out of range.
20:
21: The 'nm' utility is useful in telling which procedures are referenced
22: in which '.o' files. Thus if the loader issues a message like:
23:
24: .nf
25: Undefined:
26: _subr_
27: .fi
28:
29: and you don't know where subr() is called, the command:
30:
31: nm -og *.o | grep subr
32:
33: will tell you which '.o' files in this directory reference subr().
34:
35: The -M flag can be used to tell out of which archive or library a '.o'
36: file is loaded.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.