[lammps-users] fft3d error by compliling the new upgraded version of lammps

Dear Steve,

Could you (or anyone else) please help me on the folowing error i have. When compiling the new version of lammps i get:

make[1]: Entering directory `/home/spidaero/programs/lammps-7Jun07/src/Obj_g++'
g++ -O -I/home/spidaero/mpich2-install/include -I -DFFT_NONE -DGZIP -DMPICH_IGNORE_CXX_SEEK -c fft3d.cpp
fft3d.h:186: error: ISO C++ forbids declaration of 'FFT_DATA' with no type
fft3d.h:186: error: expected ';' before '*' token
fft3d.h:187: error: ISO C++ forbids declaration of 'FFT_DATA' with no type
fft3d.h:187: error: expected ';' before '*' token
fft3d.h:235: error: variable or field 'fft_3d' declared void
fft3d.h:235: error: 'FFT_DATA' was not declared in this scope
fft3d.h:235: error: expected primary-expression before ',' token
fft3d.h:235: error: 'FFT_DATA' was not declared in this scope
fft3d.h:235: error: expected primary-expression before ',' token
fft3d.h:235: error: expected primary-expression before 'int'
fft3d.h:235: error: expected primary-expression before 'struct'
fft3d.h:235: error: initializer expression list treated as compound expression
fft3d.h:242: error: variable or field 'fft_1d_only' declared void
fft3d.h:242: error: 'FFT_DATA' was not declared in this scope
fft3d.h:242: error: expected primary-expression before ',' token
fft3d.h:242: error: expected primary-expression before 'int'
fft3d.h:242: error: expected primary-expression before 'int'
fft3d.h:242: error: expected primary-expression before 'struct'
fft3d.h:242: error: initializer expression list treated as compound expression
fft3d.cpp:58: error: variable or field 'fft_3d' declared void
fft3d.cpp:58: error: redefinition of 'int fft_3d'
fft3d.h:235: error: 'int fft_3d' previously defined here
fft3d.cpp:58: error: 'FFT_DATA' was not declared in this scope
fft3d.cpp:58: error: 'in' was not declared in this scope
fft3d.cpp:58: error: 'FFT_DATA' was not declared in this scope
fft3d.cpp:58: error: 'out' was not declared in this scope
fft3d.cpp:58: error: expected primary-expression before 'int'
fft3d.cpp:58: error: expected primary-expression before 'struct'
fft3d.cpp: In function 'fft_plan_3d* fft_3d_create_plan(MPI_Comm, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int*)':
fft3d.cpp:522: error: 'struct fft_plan_3d' has no member named 'copy'
fft3d.cpp:522: error: 'FFT_DATA' was not declared in this scope
fft3d.cpp:522: error: expected primary-expression before ')' token
fft3d.cpp:522: error: expected `;' before 'malloc'
fft3d.cpp:523: error: 'struct fft_plan_3d' has no member named 'copy'
fft3d.cpp:525: error: 'struct fft_plan_3d' has no member named 'copy'
fft3d.cpp:528: error: 'struct fft_plan_3d' has no member named 'scratch'
fft3d.cpp:528: error: 'FFT_DATA' was not declared in this scope
fft3d.cpp:528: error: expected primary-expression before ')' token
fft3d.cpp:528: error: expected `;' before 'malloc'
fft3d.cpp:529: error: 'struct fft_plan_3d' has no member named 'scratch'
fft3d.cpp:531: error: 'struct fft_plan_3d' has no member named 'scratch'
fft3d.cpp: In function 'void fft_3d_destroy_plan(fft_plan_3d*)':
fft3d.cpp:747: error: 'struct fft_plan_3d' has no member named 'copy'
fft3d.cpp:747: error: 'struct fft_plan_3d' has no member named 'copy'
fft3d.cpp:748: error: 'struct fft_plan_3d' has no member named 'scratch'
fft3d.cpp:748: error: 'struct fft_plan_3d' has no member named 'scratch'
fft3d.cpp: At global scope:
fft3d.cpp:870: error: variable or field 'fft_1d_only' declared void
fft3d.cpp:870: error: redefinition of 'int fft_1d_only'
fft3d.h:242: error: 'int fft_1d_only' previously defined here
fft3d.cpp:870: error: 'FFT_DATA' was not declared in this scope
fft3d.cpp:870: error: 'data' was not declared in this scope
fft3d.cpp:870: error: expected primary-expression before 'int'
fft3d.cpp:870: error: expected primary-expression before 'int'
fft3d.cpp:870: error: expected primary-expression before 'struct'
make[1]: *** [fft3d.o] Error 1
make[1]: Leaving directory `/home/spidaero/programs/lammps-7Jun07/src/Obj_g++'
make: *** [g++] Error 2

Thanks in advance

Best Regards,

Nicholas Epiphaniou

MPhill/PhD student

Aerospace Sciences
Fluid Mechanics and Computational Science Group
Cranfield University
School of Engineering
Cranfield,Bedfordshire MK43 0AL
UK
Email: n.epiphaniou@…51… <mailto:n.epiphaniou@…51…>

You have an unmatched -I in this line:

g++ -O -I/home/spidaero/mpich2-install/include -I -DFFT_NONE -DGZIP
-DMPICH_IGNORE_CXX_SEEK -c fft3d.cpp

Try typing the line by itself and it should compile fft3d.cpp to *.o if
it works.

Steve