[Wien] Wien Digest, Vol 80, Issue 7
L-marks at northwestern.edu
Thu Aug 23 15:16:38 CEST 2012
It is important to do a bit of background reading to understand what
different options mean in a compilation. It is also important to
recognize that FFTW3 is not supported in Wien2k 11.1, only in 12.1
Several options are important here:
A "-I" (upper case "i") indicates a directory to look for include
files. Normally these directories end with "include". You can create
problems for yourself by adding too many of these -- only use the ones
which matter. In your case you probably need
Note that you missed a "-I" in front of the first. If you followed the
recommendations and sourced the Intel command first you do not need
the second one. I am assuming that fftw2 has been compiled in the
A "-L" (upper case "el") indicates directories to look for libraries.
To match the above you want only -L/share/apps/fftw2/lib
Adding paths for mpich2 should not be needed.
Last, a "-l" (lower case "el") indicates which libraries to use, here probably
However, this may not solve everything. My guess is that either or
both mpich2 or fftw were compiled using gcc and g77. This will
sometimes work, but often not. You need to ensure that these were
compiled using the Intel compiler (icc & ifort) if you are using these
And/or update to 12.1.
This will hopefully get you going in the right direction, although it
may not be the full answer as there may be other details of your
system that I do not know about.
On Thu, Aug 23, 2012 at 5:30 AM, Tiem Leong Yoon <tlyoon at gmail.com> wrote:
> Compilation problem of lapw0_mpi(fftw)
> Dear Wien2k users,
> I am tryig to compiple WIEN2k_11.1 (Release 14/6/2011) parallel version in a
> Rocks Linux cluster, version 5.3. The problem I faced is very similar to
> that recorded in
> Specifically, I got the error while compiling parallel SRC_lapw0. This is
> the only error message. The rest is OK.
> fftw_para.o: In function `exec_fftw_para_':
> fftw_para.F:(.text+0x77): undefined reference to `fftwnd_f77_mpi_'
> fftw_para.F:(.text+0xb2): undefined reference to `fftwnd_f77_mpi_'
> fftw_para.o: In function `init_fftw_para_':
> fftw_para.F:(.text+0x101): undefined reference to
> fftw_para.F:(.text+0x129): undefined reference to
> fftw_para.F:(.text+0x14d): undefined reference to
> make: *** [lapw0_mpi] Error 1
> The content of my Makefile is as follows:
> .SUFFIXES: .F
> .SUFFIXES: .F90
> SHELL = /bin/sh
> FC = ifort
> MPF = /share/apps/mpich2-install/bin/mpif90
> CC = cc
> FOPT = -FR -mp1 -w -prec_div -pc80 -pad -ip -DINTEL_VML -traceback
> FPOPT = -FR -mp1 -w -prec_div -pc80 -pad -ip -DINTEL_VML -traceback -DFFTW3
> DParallel = '-DParallel'
> FGEN = $(PARALLEL)
> LDFLAGS = -pthread -L/share/apps/intel/Compiler/11.1/072/mkl/lib/em64t
> -L/share/apps/intel/Compiler/11.1/072/lib/em64t -L/share/apps/fftw3/lib
> R_LIBS = -lmkl_lapack -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core
> -openmp -pthread -lguide
> RP_LIBS = $(R_LIBS) -lmkl_scalapack_lp64 -lmkl_solver_lp64 -lmkl_blacs_lp64
> -lfftw3 -lfftw3_mpi -lmpich -lfftw2xf_intel
> I had tried very hard to get the problem solved but all in vain, even
> following the suggestions as mentioned in the posts
> I have tried to install various versions of fftw (fftw-2.1.5, fftw-3-3.2,
> even intel version of fftw were tried), compiling them using different
> compilers (mpif90 of mpich2, mpiifort), but the same problem persists, be I
> use fftw or fftw2 (I also took care of -DFFTW3 and -DFFTW2 accordingly). I
> can't figure out what's exactly the source of the problem. Your suggestion
> will be much appreciated.
Professor Laurence Marks
Department of Materials Science and Engineering
"Research is to see what everybody else has seen, and to think what
nobody else has thought"
More information about the Wien