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

Error: *** glibc detected *** ./run.out: free(): invalid next size (normal)

oicehimeo
Beginner
1,367 Views
Hello,

I'm new at using this compiler, and programming in general. I am having trouble understanding this error that appears when i compile my makefile using ifort.

I am using a fedora 4 core and the intel fortran compiler 9.0

When i compile my makefile [compiles numerous code in f77 or f90] it does create an executable called run.out but when i run this executable i get this output:

*** glibc detected *** ./run.out: free(): invalid next size (normal): 0x08c08eb8 ***
======= Backtrace: =========
/lib/libc.so.6[0xad3424]
/lib/libc.so.6(__libc_free+0x77)[0xad395f]
./run.out[0x808afc1]
./run.out[0x80bcfb5]
./run.out[0x809582b]
./run.out[0x80897e8]
./run.out[0x804a06d]
/lib/libc.so.6(__libc_start_main+0xc6)[0xa84de6]
./run.out[0x8049f21]
======= Memory map: ========
00111000-00114000 rwxp 00111000 00:00 0
00487000-00488000 r-xp 00487000 00:00 0
00817000-00820000 r-xp 00000000 fd:00 30999590 /lib/libgcc_s-4.0.0-20050520.so.1
00820000-00821000 rwxp 00009000 fd:00 30999590 /lib/libgcc_s-4.0.0-20050520.so.1
0090f000-00914000 r-xp 00000000 fd:00 38928763 /opt/intel_fc_80/lib/libunwind.so.5
00914000-00915000 rwxp 00004000 fd:00 38928763 /opt/intel_fc_80/lib/libunwind.so.5
00967000-00985000 r-xp 00000000 fd:00 38928735 /opt/intel_fc_80/lib/libcxa.so.5
00985000-0098e000 rwxp 0001d000 fd:00 38928735 /opt/intel_fc_80/lib/libcxa.so.5
00a52000-00a6c000 r-xp 00000000 fd:00 30999584 /lib/ld-2.3.5.so
00a6c000-00a6d000 r-xp 00019000 fd:00 30999584 /lib/ld-2.3.5.so
00a6d000-00a6e000 rwxp 0001a000 fd:00 30999584 /lib/ld-2.3.5.so
00a70000-00b94000 r-xp 00000000 fd:00 30999585 /lib/libc-2.3.5.so
00b94000-00b96000 r-xp 00124000 fd:00 30999585 /lib/libc-2.3.5.so
00b96000-00b98000 rwxp 00126000 fd:00 30999585 /lib/libc-2.3.5.so
00b98000-00b9a000 rwxp 00b98000 00:00 0
00b9c000-00bbe000 r-xp 00000000 fd:00 30999589 /lib/libm-2.3.5.so
00bbe000-00bbf000 r-xp 00021000 fd:00 30999589 /lib/libm-2.3.5.so
00bbf000-00bc0000 rwxp 00022000 fd:00 30999589 /lib/libm-2.3.5.so
08048000-080d0000 r-xp 00000000 fd:00 20447304 /home/tanya/Programs/run.out
080d0000-080d7000 rwxp 00087000 fd:00 20447304 /home/tanya/Programs/run.out
080d7000-080da000 rwxp 080d7000 00:00 0
08c00000-08c21000 rwxp 08c00000 00:00 0 [heap]
b7e00000-b7e21000 rwxp b7e00000 00:00 0
b7e21000-b7f00000 ---p b7e21000 00:00 0
bfcc5000-bfcdb000 rwxp bfcc5000 00:00 0 [stack]
forrtl: error (76): IOT trap signal

Any help would be greatly appreciated.

Thanks
0 Kudos
1 Reply
Steven_L_Intel1
Employee
1,367 Views
Just to clarify - this error is not when you compile the program or build it using the makefile, but when you actually run it, right? The error suggests that your program is corrupting memory, perhaps by accessing an undefined pointer or off the end of an array. The first thing to try is building with -CB and see if you get any array bounds errors. If not, then see how far the program gets before the error occurs, which will at least place a limit on where to stop looking. Unfortunately, memory corruption issues are a real pain to track down.
0 Kudos
Reply