Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

how to use idb

thegrayman
Beginner
736 Views

Hello,

I am having problems in how to use idb to debugg a fortran program that consist of many subroutines.

First of all, I know forsure thatmy intel compiler 7.0 has idb installed.

To start debugging, first I compile and link the program using the following commands:

%% ifort -c -g *.f

%% ifort *.o

Then, I try to run idb to start debugging by entering the following commands:

%%idb a.out

(idb) run

However, what I get at the end is the following:

thread received signal SEGV
stopped at [ function free(...) 0x00000032926693a2]

Information: An type was presented during execution of the previous command. For complete type
information on this symbol, recompilation of the program will be necessary. Consult the compiler man pages for details on producing full symbol table information.

I do not understand what the message means? Is this an actual bug in my program? Are the commands that I used to run idb correct? Please let me know what is the correct procedure to run idb, and what options do I use for compiling and linking processes, as I shown above, in order to be able to use idb.

0 Kudos
1 Reply
Ron_Green
Moderator
736 Views
Are you sure your compiler is version 7.0? The compilers of that era were named 'ifc' and not ifort. Could you send the results of:

ifort -V
idb -V

I suspect you actually have ifort 9.0 or greater.

Now, on your idb session, are you able to:

(idb) list 1,100
(idb) break

where is the line number of your FIRST executable statement.

(idb) run

Now, do you get to the first statement, or do you get SEGV immediately before reaching the breakpoint?

Once you get to the breakpoint, can you do a 'where' command?

ron
0 Kudos
Reply