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