This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
FX's binaries at quatramaran.ens.fr and OpenMP: no success
- From: Harald Anlauf <anlauf at gmx dot de>
- To: fortran at gcc dot gnu dot org
- Date: Fri, 14 Jul 2006 23:58:56 +0200
- Subject: FX's binaries at quatramaran.ens.fr and OpenMP: no success
Hi,
I wanted to experiment with OpenMP with FX's binaries from
http://quatramaran.ens.fr/~coudert/gfortran/
on both a SuSE 8.2 and a Debian 3.1r1 based system
by first trying out a simpler C example
(that definitely works with Intel's icc version 9):
openmp0.c:
#include <stdio.h>
#ifdef _OPENMP
#include <omp.h>
#endif
int main(int argc, char *argv[])
{
#ifdef _OPENMP
printf("Number of Processors: %d\n", omp_get_num_procs());
printf("This is thread %3d out of %3d\n",
omp_get_thread_num(), omp_get_num_threads());
#else
printf("OpenMP not available.\n");
#endif /* _OPENMP */
printf("Done.\n");
return 0;
}
I compiled it with:
% /tmp/irun/bin/gfortran -g -static -fopenmp openmp0.c -I
/tmp/irun/include -v
Driving: /tmp/irun/bin/gfortran -g -static -fopenmp openmp0.c -I
/tmp/irun/inclu
de -v -lgfortranbegin -lgfortran -lm
Using built-in specs.
Target: i386-linux
Configured with: ../gcc/configure
--prefix=/cosmic/coudert/tmp/gfortran-20060714
/irun --enable-languages=c,fortran --host=i386-linux
--with-gmp=/cosmic/coudert/
tmp/gfortran-20060714/gfortran_libs
Thread model: posix
gcc version 4.2.0 20060714 (experimental)
/tmp/irun/bin/../libexec/gcc/i386-linux/4.2.0/cc1 -quiet -v -I
/tmp/irun/includ
e -iprefix /tmp/irun/bin/../lib/gcc/i386-linux/4.2.0/ -D_REENTRANT
openmp0.c -qu
iet -dumpbase openmp0.c -mtune=i386 -auxbase openmp0 -g -version
-fopenmp -o /tm
p/ccgKp2IX.s
ignoring nonexistent directory
"/tmp/irun/bin/../lib/gcc/i386-linux/4.2.0/../../
../../i386-linux/include"
ignoring nonexistent directory
"/cosmic/coudert/tmp/gfortran-20060714/irun/inclu
de"
ignoring nonexistent directory
"/cosmic/coudert/tmp/gfortran-20060714/irun/lib/g
cc/i386-linux/4.2.0/include"
ignoring nonexistent directory
"/cosmic/coudert/tmp/gfortran-20060714/irun/i386-
linux/include"
#include "..." search starts here:
#include <...> search starts here:
/tmp/irun/include
/tmp/irun/bin/../lib/gcc/i386-linux/4.2.0/include
/usr/local/include
/usr/include
End of search list.
GNU C version 4.2.0 20060714 (experimental) (i386-linux)
compiled by GNU C version 4.2.0 20060714 (experimental).
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: d10919e112e08b6e02123c5aa7c4a32e
as -V -Qy -o /tmp/ccZK7kJX.o /tmp/ccgKp2IX.s
GNU assembler version 2.14.90.0.5 (i586-suse-linux) using BFD version
2.14.90.0.
5 20030722 (SuSE Linux)
Reading specs from
/tmp/irun/bin/../lib/gcc/i386-linux/4.2.0/../../../libgomp.spec
/tmp/irun/bin/../libexec/gcc/i386-linux/4.2.0/collect2 -m elf_i386
-static /usr
/lib/crt1.o /usr/lib/crti.o
/tmp/irun/bin/../lib/gcc/i386-linux/4.2.0/crtbeginT.
o -L/tmp/irun/bin/../lib/gcc/i386-linux/4.2.0 -L/tmp/irun/bin/../lib/gcc
-L/tmp/
irun/bin/../lib/gcc/i386-linux/4.2.0/../../.. /tmp/ccZK7kJX.o
-lgfortranbegin -l
gfortran -lm -lgomp -lrt -lpthread --start-group -lgcc -lgcc_eh
-lpthread -lc --
end-group /tmp/irun/bin/../lib/gcc/i386-linux/4.2.0/crtend.o /usr/lib/crtn.o
Running gdb on the resulting a.out I find:
(gdb) run
Starting program: /tmp/a.out
Program received signal SIGSEGV, Segmentation fault.
0x08048816 in initialize_team () at sem.h:75
75 sem.h: No such file or directory.
in sem.h
(gdb) where
#0 0x08048816 in initialize_team () at sem.h:75
#1 0x080a31ba in __do_global_ctors_aux ()
#2 0x08048109 in _init ()
#3 0x0804f601 in __libc_csu_init () at elf-init.c:60
#4 0x0804f41f in __libc_start_main (main=0x8048208 <main>, argc=1,
ubp_av=0xbffff034, init=0x804f5d0 <__libc_csu_init>,
fini=0x804f630 <__libc_csu_fini>, rtld_fini=0, stack_end=0x804880c)
at ../sysdeps/generic/libc-start.c:176
(gdb)
I get exactly the same result on the Debian system.
Does anybody know what I might be doing wrong?
Cheers,
-ha