[lammps-users] compiling problem

Dear all,

I have recently updated to the newest available (Feb 9 '11) src code and am having compilation problems I have not previously had. I am compiling on linux cluster (centOS) with an intel compiler (intel-comp/c-11.0.074). The mpi compiler is (openmpi/1.4.2-pgi). The compiling errors i am getting are

"update.cpp", line 281: error: identifier "atoll" is undefined
     ntimestep = ATOBIGINT(arg[0]);

I also get the same error for run.cpp. I am able to compile on the src on mac os x, so I am curious to get feedback from anyone who has an idea where the problem is between the compiler, libraries, etc.

I have included the makefile below.


SHELL = /bin/sh

  # compiler/linker settings
  # specify flags and libraries needed for your compiler

  CC = mpiCC
  LINK = mpiCC
  LIB = -lstdc++ -lm -lmpi
  ARCHIVE = ar
  ARFLAGS = -rc
  SIZE = size


try a different compiler, e.g. gcc, that supports the c99 standard.

i can tell you in private what i think about the PGI compilers,
if you really need to hear that.


If you look in lmptype.h you will see
where ATOBIGINT is set to atoll.

This is a system function that converts a string
(read from the input file) to a 64-bit int.
Your system/compiler must
have that function or a similar one someplace.
I think it's part of the standard C library -
e.g. I can do "man atoll" on my linux box and
see it.

So I guess you need to figure out what library
it is in to link to (in your Makefile.foo) or what
alternate function your compiler provides for
that operation.