I am trying to compile NWChem 6.3 (2014-01-28) on a CentOS 6.5-x86_64 system with CUDA-5.5 installed. The 2.08MB make.log file ends with the following 8 lines:
/usr/local/nwchem-6.3/lib/LINUX64/libtce.a(hybrid.o): In function `check_device_':
hybrid.c:(.text+0x2): undefined reference to `armci_me'
hybrid.c:(.text+0x8): undefined reference to `armci_master'
/usr/local/nwchem-6.3/lib/LINUX64/libtce.a(hybrid.o): In function `device_init_':
hybrid.c:(.text+0x2f): undefined reference to `armci_me'
hybrid.c:(.text+0x35): undefined reference to `armci_master'
collect2: ld returned 1 exit status
make: *** [all] Error 1
This version of CentOS/NWChem compiles correctly, and runs, w/o CUDA. Cuda 5.5 installed correctly and runs cuda samples so I assume that is working.
Here are the environment variables that were set:
export NWCHEM_TOP=/usr/local/nwchem-6.3
export NWCHEM_TARGET=LINUX64
export USE_MPI=y
export USE_MPIF=y
export LIBMPI="-pthread -m64 -lmpi_f90 -lmpi_f77 -lmpi -ldl"
export MPI_LOC=/usr/lib64/openmpi
export MPI_LIB=/usr/lib64/openmpi/lib
export MPI_INCLUDE=/usr/include/openmpi-x86_64
export NWCHEM_MODULES=all
export LARGE_FILES=TRUE
export USE_NOFSCHECK=TRUE
export TCE_CUDA=y
export CUDA_LIBS="-L/usr/local/cuda-5.5/lib64 -lcudart"
export CUDA_FLAGS="-arch sm_20 "
export CUDA_INCLUDE="-I. -I/usr/local/cuda-5.5/include"
export CUDA=nvcc
export PATH=$PATH:/usr/local/cuda-5.5/bin
export FC=gfortran
export CC=gcc
Then compiled with make nwchem_config, and make >& make.log
I guess the big question is, what are the references to "armci" ?
|