error: ‘class LAMMPS_NS::ThrData’ has no member named ‘timer’

Hello,

I am trying to build LAMMPS with two user-packages added (user-cuda, and user-omp).
But I keep failing to build it.
I found similar problem in the mailing list.
It suggested doing "make package-update". I also did it, but the same problem.
I'll appreciate any help no that.

Here is what I did before make.

   make yes\-user\-cuda    make yes-user-omp
   make package\-update    make hp6

The error message:

g++ -O -DLAMMPS_GZIP -DLAMMPS_JPEG -DLMP_USER_OMP -I../../lib/cuda -DLMP_USER_CUDA -I/usr/include/mpich2-x86_64/ -DMPICH_SKIP_MPICXX -I/usr/local/cuda/include -DUNIX -DFFT_CUFFT -DCUDA_PRECISION=2 -DCUDA_ARCH=20 -c ../pair_adp_omp.cpp
../pair_adp_omp.cpp: In member function ‘void LAMMPS_NS::PairADPOMP::eval(int, int, LAMMPS_NS::ThrData*)’:
../pair_adp_omp.cpp:203: error: ‘class LAMMPS_NS::ThrData’ has no member named ‘timer’
../pair_adp_omp.cpp:203: error: incomplete type ‘LAMMPS_NS::Timer’ used in nested name specifier
../pair_adp_omp.cpp:221: error: ‘class LAMMPS_NS::ThrData’ has no member named ‘timer’
../pair_adp_omp.cpp:221: error: incomplete type ‘LAMMPS_NS::Timer’ used in nested name specifier
make[1]: *** [pair_adp_omp.o] Error 1
make[1]: Leaving directory `/root/LAMMPS/lammps-25Nov13/src/Obj_hp6'
make: *** [hp6] Error 2

David

This problem was fixed quite a while ago. Are you using the current version of lammps?

Axel

I downloaded from lammps webpage directly.
I believe it is up-to-date version.

I could successfully build without user-cuda and user-omp packages.
However, with those two packages, it fails with the following error message.
Any idea?

g++ -O -DLAMMPS_GZIP -DLAMMPS_JPEG -DLMP_USER_OMP -I../../lib/cuda -DLMP_USER_CUDA -I/usr/include/mpich2-x86_64/ -DMPICH_SKIP_MPICXX -I/usr/local/cuda/include -DUNIX -DFFT_CUFFT -DCUDA_PRECISION=2 -DCUDA_ARCH=20 -c ../pair_adp_omp.cpp
../pair_adp_omp.cpp: In member function ‘void LAMMPS_NS::PairADPOMP::eval(int, int, LAMMPS_NS::ThrData*)’:
../pair_adp_omp.cpp:203: error: ‘class LAMMPS_NS::ThrData’ has no member named ‘timer’
../pair_adp_omp.cpp:203: error: incomplete type ‘LAMMPS_NS::Timer’ used in nested name specifier
../pair_adp_omp.cpp:221: error: ‘class LAMMPS_NS::ThrData’ has no member named ‘timer’
../pair_adp_omp.cpp:221: error: incomplete type ‘LAMMPS_NS::Timer’ used in nested name specifier
make[1]: *** [pair_adp_omp.o] Error 1
make[1]: Leaving directory `/root/LAMMPS/lammps-27Nov13/src/Obj_hp6'
make: *** [hp6] Error 2

Thanks,
David

I don't know how this is possible. The svn and git repos have the correct version.

All you need to do are to remove the two lines that reference thr->timer and it should compile.

axel.

I think I know the reason.
I downloaded "tar ball" from the download page.
The problem exists with the code from the tar ball.

I just pulled the code from git repository and built from the code.
It does not have that problem.

Now I have the following problem at the end of linking.

/usr/bin/ld: skipping incompatible /usr/local/cuda/lib/libcufft.so when searching for -lcufft
/usr/bin/ld: cannot find -llammpscuda
collect2: ld returned 1 exit status
make[1]: *** [../lmp_hp6] Error 1

Should I build liblammpscuda separately?
I appreciate your help.

David

I could make liblammpscuda library.

Thanks,
David