I have been able to compile and run the application correctly with -fopenmp
flag, but when I also add -static flag I can compile the application. However
while running it i get a segmentation fault error. 

I have used gdb to see where the program crashes, and it seems to be somewhere
in openmp header files.
This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db
library "/lib/tls/libthread_db.so.1".

(gdb) run
Starting program: /files4/berkin/kmeans/example 

Program received signal SIGSEGV, Segmentation fault.
initialize_team () at ../../../gcc/libgomp/config/linux/sem.h:39
39        *sem = value;



Also the detailed compilation notes are 
GNU assembler version 2.15.92.0.2 (i386-redhat-linux) using BFD version
2.15.92.0.2 20040927
/files4/berkin/gcc-4.2.1/bin/gcc -fopenmp -g -v -save-temps -static -O2   -c
example.c 
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ../gcc/configure --prefix=/files4/berkin/gcc-4.2.1
--enable-threads
Thread model: posix
gcc version 4.2.1
 /files4/berkin/gcc-4.2.1/libexec/gcc/i686-pc-linux-gnu/4.2.1/cc1 -E -quiet -v
-D_REENTRANT example.c -mtune=generic -fopenmp -fworking-directory -O2
-fpch-preprocess -o example.i
ignoring nonexistent directory
"/files4/berkin/gcc-4.2.1/lib/gcc/i686-pc-linux-gnu/4.2.1/../../../../i686-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include
 /files4/berkin/gcc-4.2.1/include
 /files4/berkin/gcc-4.2.1/lib/gcc/i686-pc-linux-gnu/4.2.1/include
 /usr/include
End of search list.
 /files4/berkin/gcc-4.2.1/libexec/gcc/i686-pc-linux-gnu/4.2.1/cc1
-fpreprocessed example.i -quiet -dumpbase example.c -mtune=generic -auxbase
example -g -O2 -version -fopenmp -o example.s
GNU C version 4.2.1 (i686-pc-linux-gnu)
        compiled by GNU C version 4.2.1.
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 80e6f10ad3e2beca945f13dba64821c7
 as -V -Qy -o example.o example.s
GNU assembler version 2.15.92.0.2 (i386-redhat-linux) using BFD version
2.15.92.0.2 20040927
/files4/berkin/gcc-4.2.1/bin/gcc -fopenmp -g -v -save-temps -static -O2 -o
example fuzzy_kmeans.o cluster.o kmeans_clustering.o example.o -lm
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ../gcc/configure --prefix=/files4/berkin/gcc-4.2.1
--enable-threads
Thread model: posix
gcc version 4.2.1
Reading specs from
/files4/berkin/gcc-4.2.1/lib/gcc/i686-pc-linux-gnu/4.2.1/../../../libgomp.spec
 /files4/berkin/gcc-4.2.1/libexec/gcc/i686-pc-linux-gnu/4.2.1/collect2 -m
elf_i386 -static -o example /usr/lib/crt1.o /usr/lib/crti.o
/files4/berkin/gcc-4.2.1/lib/gcc/i686-pc-linux-gnu/4.2.1/crtbeginT.o
-L/files4/berkin/gcc-4.2.1/lib/gcc/i686-pc-linux-gnu/4.2.1
-L/files4/berkin/gcc-4.2.1/lib/gcc/i686-pc-linux-gnu/4.2.1/../../..
fuzzy_kmeans.o cluster.o kmeans_clustering.o example.o -lm -lgomp -lrt
--start-group -lgcc -lgcc_eh -lpthread -lc --end-group
/files4/berkin/gcc-4.2.1/lib/gcc/i686-pc-linux-gnu/4.2.1/crtend.o
/usr/lib/crtn.o


-- 
           Summary: Segmentation fault when running an application compiled
                    with -fopenmp and -static flags
           Product: gcc
           Version: 4.2.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: boz283 at ece dot northwestern dot edu
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32896

Reply via email to