Cray XT5: cannot run (../../ga-5-2/armci/src-portals/locks.h: 16)


Just Got Here
Following the "How-to: Cray platforms"

Environment:

$ export NWCHEM_TOP=/scratch/astreib/nwchem-6.3.revision2-src.2013-10-17
$ export NWCHEM_TARGET=LINUX64
$ export NWCHEM_MODULES=all
$ export USE_MPI=y
$ export USE_MPIF=y
$ export USE_MPIF4=y
$ export USE_SCALAPACK=y
$ export USE_64TO32=y
$ export LIBMPI=" "
$ export ARMCI_NETWORK=PORTALS

Building:

$ cd $NWCHEM_TOP/src
$ make nwchem_config

$ make 64_to_32

$ make FC=ftn >& make.log

$ tail make.log

libtool: kompile:  cc -DHAVE_CONFIG_H -I. -I../../ga-5-2/armci -I../../ga-5-2/armci/src-portals -I../../ga-5-2/armci/src/include -c ../../ga-5-2/armci/src-portals/armci.c -o src-portals/armci.o
PGC-F-0249-#error --  cannot run (../../ga-5-2/armci/src-portals/locks.h: 16)
PGC/x86-64 Linux 12.10-0: compilation aborted
make[5]: *** [src-portals/armci.lo] Error 1
make[5]: *** Waiting for unfinished jobs....
make[4]: *** [all] Error 2
make[3]: *** [all-recursive] Error 1
make[2]: *** [all] Error 2
make[1]: *** [build/.libs/libga.a] Error 1
make: *** [libraries] Error 1


The lines around line 16 in the referenced locks.h:

    11 #if !(defined(PMUTEX) || defined(PSPIN) || defined(CYGNUS) || defined(CRAY_XT))
12 # include "spinlock.h"
13 #endif
14
15 #if !(defined(PMUTEX) || defined(PSPIN) || defined(SPINLOCK))
16 # error cannot run
17 #endif
18
19 #if (defined(SPINLOCK) || defined(PMUTEX) || defined(PSPIN) || defined(HITACHI)) && !(defined(BGML) || defined(DCMF))

Forum Vet
Astreib
what kind of Cray system are you compiling NWChem for?

The instructions you are following are for the Cray XT that has been around for almost 8 years ... is this the system you want to install NWChem on?
If you scroll down a little bit at the URL
http://nwchemgit.github.io/index.php/Compiling_NWChem#How-to:_Cray_platforms
you will find instructions for more recent Cray platforms.

Just Got Here
Quote:Edoapra Oct 24th 12:22 pm
Astreib
what kind of Cray system are you compiling NWChem for?


It is a Cray XT5m, with CNL/CLE Release: 3.1.UP03A

Forum Vet
Astreib
I have a pretty ugly fix for this problem.
For a better solution, you should contact the G/AARMCI developers at
https://groups.google.com/forum/#!forum/hpctools

Here is the ugly fix
1) cd $NWCHEM_TOP/src/tools/build/armci
2) edit the file config.h and change the line
/* #undef CRAY_XT */

to
#define CRAY_XT 1

3) compile: make FC=ftn
4) make FC=ftn install
5) cd .. ; make FC=ftn install
6) cd .. ; make FC=ftn link

Just Got Here
Edoapra, thanks for the suggestions. I already see CRAY_XT set in that config.h file:

$ grep CRAY_XT config.h
#define CRAY_XT 1
/* #undef SPAWN_CRAY_XT */


Trying to make FC=ftn results in the same error:

$ make FC=ftn
make  all-am
make[1]: Entering directory `/scratch/astreib/nwchem-6.3.revision2-src.2013-10-17/src/tools/build/armci'
source='../../ga-5-2/armci/src-portals/armci.c' object='src-portals/armci.lo' libtool=yes \
        DEPDIR=.deps depmode=none /bin/sh ../../ga-5-2/armci/build-aux/depcomp \
        /bin/sh ./libtool  --tag=CC   --mode=compile cc -DHAVE_CONFIG_H -I. -I../../ga-5-2/armci     -I../../ga-5-2/armci/src-portals -I../../ga-5-2/armci/src/include                   -c -o src-portals/armci.lo ../../ga-5-2/armci/src-portals/armci.c
libtool: compile:  cc -DHAVE_CONFIG_H -I. -I../../ga-5-2/armci -I../../ga-5-2/armci/src-portals -I../../ga-5-2/armci/src/include -c ../../ga-5-2/armci/src-portals/armci.c -o src-portals/armci.o
PGC-F-0249-#error --  cannot run (../../ga-5-2/armci/src-portals/locks.h: 16)
PGC/x86-64 Linux 12.10-0: compilation aborted
make[1]: *** [src-portals/armci.lo] Error 1
make[1]: Leaving directory `/scratch/astreib/nwchem-6.3.revision2-src.2013-10-17/src/tools/build/armci'
make: *** [all] Error 2


I'll try the forum you suggested.


Forum >> NWChem's corner >> Compiling NWChem