Quantcast
Channel: Intel® C++ Compiler
Viewing all articles
Browse latest Browse all 1616

fftw configure fails with intel openmp flag

$
0
0

I am facing error while trying to compile fftw3 with intel compiler for mpi+openmp configuration.
i configured using:

CC=$MPIC_COMP CXX=$MPICXX_COMP F77=$MPIF77_COMP CFLAGS="-fPIC " FFLAGS="-fPIC " LDFLAGS="" LIBS="-lifcore -lifport  -lmpi" ./configure --prefix=$ROOT_DIR/common_dependencies --enable-openmp --enable-mpi --enable-single
where:-
MPIC_COMP=mpiicc
CXX=mpiicpc
F77=mpiifort
configure succeeds , but during make i get:

mpicc -fopenmp -fPIC -o mpi-bench mpi_bench-mpi-bench.o mpi_bench-fftw-bench.o mpi_bench-hook.o  ./.libs/libfftw3f_mpi.a ../threads/.libs/libfftw3f_omp.a /home/puneet/NAMD_BUILD/fftw-3.3.4/.libs/libfftw3f.a ../.libs/libfftw3f.a ../libbench2/libbench2.a -lm -lifcore -lifport -lmpi -fopenmp
../threads/.libs/libfftw3f_omp.a(libfftw3f_omp_la-openmp.o): In function `fftwf_spawn_loop':
openmp.c:(.text+0x5c): undefined reference to `__kmpc_global_thread_num'
openmp.c:(.text+0x6e): undefined reference to `__kmpc_ok_to_fork'
openmp.c:(.text+0xae): undefined reference to `__kmpc_fork_call'
openmp.c:(.text+0xc6): undefined reference to `__kmpc_serialized_parallel'
openmp.c:(.text+0x11b): undefined reference to `__kmpc_end_serialized_parallel'
openmp.c:(.text+0x205): undefined reference to `__kmpc_for_static_init_4'
openmp.c:(.text+0x275): undefined reference to `__kmpc_for_static_fini'
/home/puneet/NAMD_BUILD/fftw-3.3.4/.libs/libfftw3f.a(trig.o): In function `fftwf_mktriggen':
trig.c:(.text+0x5cf): undefined reference to `__svml_sincos2'
trig.c:(.text+0x77f): undefined reference to `__svml_sincos2'
trig.c:(.text+0xa5a): undefined reference to `__svml_sincos2'
trig.c:(.text+0xc71): undefined reference to `__svml_sincos2'

this issue might be due to default openmp flag (-fopenmp). Now When i specify intel's openmp flag in configure , configure fails!
CC=$MPIC_COMP CXX=$MPICXX_COMP F77=$MPIF77_COMP CFLAGS="-fPIC -openmp" FFLAGS="-fPIC -openmp" LIBS="-lifcore -lifport  -lmpi" ./configure --prefix=$ROOT_DIR/common_dependencies --enable-openmp --enable-mpi --enable-single

checking whether to build static libraries... yes
checking for ocamlbuild... no
checking for mpicc... mpicc
checking for MPI_Init... no
checking for MPI_Init in -lmpi... no
checking for MPI_Init in -lmpich... no
configure: error: could not find mpi library for --enable-mpi

so when i supply -openmp flag , the compiler choses mpicc instead of mpiicc. what might be the reason for this behaviour,
any help / hint will be very fruitful.

Eagerly awaiting your reply.


Viewing all articles
Browse latest Browse all 1616

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>