Page 1 of 1

Compilation of VASP 4.6 problem (error at fftw3d.o)...

Posted: Tue May 22, 2007 6:55 pm
by vasp
I have been able to overcome several other complications before reaching this one, but now I really don't know what to do.

I get several errors regarding fftw3d.f90 including:

fortcom: Error: fftw3d.f90, line 412: This name does not have a type, and must have an explicit type. [FFTW_FORWARD] [FFTW_ESTIMATE]

fortcom: Error: fftw3d.f90, line 416: This name does not have a type, and must have an explicit type. [FFTW_BACKWARD] [FFTW_ESTIMATE]

fortcom: Error: fftw3d.f90, line 432: Cannot open include file 'fftw3.f' include 'fftw3.f'

fortcom: Error: fftw3d.f90, line 439: This name does not have a type, and must have an explicit type. [FFTW_FORWARD] [FFTW_MEASURE]

fortcom: Error: fftw3d.f90, line 443: This name does not have a type, and must have an explicit type. [FFTW_BACKWARD] [FFTW_MEASURE]

fftw3d.f90(294) : (col. 16) remark: LOOP WAS VECTORIZED.
compilation aborted for fftw3d.f90 (code 1)
make: *** [fftw3d.o] Error 1

I looked at the makefile (which by the way is makefile.linux_ifc_P4) but I didn't find it to be helpful. I used ifc 9.1.043 as the fortran compiler and I am using Ubuntu Linux (version 7.0.4 or something like that). Please help!

Compilation of VASP 4.6 problem (error at fftw3d.o)...

Posted: Wed May 23, 2007 2:55 pm
by admin
the problem seems to be due to the fft you use: if you choose the
http://www.fftw.org
version (default eg in makefile.linux_ifc_P4)
you have to copy fftw3.f and fftw3.h from the include subdirectory of the directory where the fftw is installed on your system to the vasp.4.6 directory
An alternative would be to choose Juergen Furthmueller's fft instead
(please simply change the corresponding comment-signs in the makefile), there are no extra files needed if you use this fft.

Compilation of VASP 4.6 problem (error at fftw3d.o)...

Posted: Wed May 23, 2007 3:40 pm
by job
Most compilers have some flag to add directories to the include search path. You can use that and add the appropriate path to the FFLAGS variable in the Makefile. Like

FFLAGS = -I /home/opt/fftw-3.1.2/gnu64/include