problem with compiling on MacOs


Clicked A Few Times
Dear all,

I am new in the NWChem community and try to compile the 6.1.1 version on our Mac cluster.

I used the ifort 12.1.0, gcc 4.2.1 and openmpi 1.6.5 compilers.

I used tha following options:

export NWCHEM_TOP=/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1
export LARGE_FILES=TRUE
export OLD_GA=yes
export NWCHEM_TARGET=MACX
export NWCHEM_MODULES="all"
export BLASOPT="-L/opt/intel/mkl/lib/ -lmkl_core -lmkl_sequential -lmkl_intel_ilp64"
export LIBRARY_PATH="$LIBRARY_PATH:/opt/app/darwin-x86/openmpi-1.6.5/lib/:/opt/intel/mkl/lib/"
export USE_MPI=y
export USE_MPIF=y
export USE_MPIF4=y
export MPI_LOC=/opt/app/darwin-x86/openmpi-1.6.5
export MPI_INCLUDE=/opt/app/darwin-x86/openmpi-1.6.5/include
export LIBMPI="-lmpi -lmpi_f90 -lmpi_f77"
export FC=ifort
export CC=gcc
export F77=ifort
export HAS_BLAS=yes

and compile the code using this command:

make FC=ifort >& make.log

Everything looks fine in the make.log file but the following error occurs when I execute a test input.

/opt/app/darwin-x86/openmpi-1.6.5/bin/mpirun -np 2 /opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/bin/MACX64/nwchem opt.nw
argument  1 = opt.nw
MA fatal error: MA_sizeof: invalid datatype: 4337916969969
forrtl: error (78): process killed (SIGTERM)
Image PC Routine Line Source
mca_btl_sm.so 00000001114034F1 Unknown Unknown Unknown
libmpi.1.dylib 0000000110F7BF35 Unknown Unknown Unknown
mca_coll_tuned.so 00000001114C621E Unknown Unknown Unknown
mca_coll_tuned.so 00000001114C63D8 Unknown Unknown Unknown
mca_coll_tuned.so 00000001114BC510 Unknown Unknown Unknown
mca_coll_sync.so 00000001114B6D74 Unknown Unknown Unknown
libmpi.1.dylib 0000000110F88DDC Unknown Unknown Unknown
nwchem 00000001029F7D02 Unknown Unknown Unknown
nwchem 00000001029F9D31 Unknown Unknown Unknown
nwchem 0000000100009544 Unknown Unknown Unknown
nwchem 000000010000122C Unknown Unknown Unknown
nwchem 0000000100000FAC Unknown Unknown Unknown
nwchem 0000000100000F64 Unknown Unknown Unknown


mpirun has exited due to process rank 0 with PID 1713 on
node ar017119.rech.ensc-rennes.fr exiting improperly. There are two reasons this could occur:

1. this process did not call "init" before exiting, but others in
the job did. This can cause a job to hang indefinitely while it waits
for all processes to call "init". By rule, if one process calls "init",
then ALL processes must call "init" prior to termination.

2. this process called "init", but exited without calling "finalize".
By rule, all processes that call "init" MUST call "finalize" prior to
exiting or it will be considered an "abnormal termination"

This may have caused other processes in the application to be
terminated by signals sent by mpirun (as reported here).



Below is the my test input file

memory 200000 mb

geometry noautoz
symmetry group C1
Au 1.4 0.0 0.0
Au -1.4 0.0 0.0
Au 0.0 1.4 0.0
Au 0.0 -1.4 0.0
end

basis spherical
Au library "stuttgart_rsc_1997_ecp"
end

ecp
Au library "stuttgart_rsc_1997_ecp"
end

dft
xc xpbe96 cpbe96
iterations 400
end
  1. tddft
  2. cis
  3. nroots 10
  4. target 1
  5. MAXITER 100
  6. end
driver
maxiter 100
end
task dft optimize

HELP!!

thanks in advance

Forum Vet
Rmarchal
I would like to verify if your are building for NWCHEM_TARGET=MACX64 or MACX ...
In the list of env. variables, I see a mention of MACX, while in the mpirun arguments I can spot MACX64.

By the way, NWChem 6.3 has been out for a while.

Cheers, Edo

Clicked A Few Times
Edo

Sorry for the mistake.

I was using this setting:
export NWCHEM_TARGET=MACX64

Thus I compiled the code for a MACX64 target.

Cheers, Rémi

Forum Vet
Rémi
Could you please send me the out generated from the following command

1) head $NWCHEM_TOP/src/tools/build/config.log
2) cd $NWCHEM_TOP/src/ ; make FC=ifort link
3) cd $NWCHEM_TOP/src/inp ; make clean ; make FC=ifort

Clicked A Few Times
Dear Edo,

here are the various outs

1) head $NWCHEM_TOP/src/tools/build/config.log
There is no $NWCHEM_TOP/src/tools/build repertory

Clicked A Few Times
2) cd $NWCHEM_TOP/src/ ; make FC=ifort link
make nwchem.o stubs.o
ifort -g -I. -I/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/include -I/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/tools/include -DMACX -DPARALLEL_DIAG -DCOMPILATION_DATE="'`date +%a_%b_%d_%H:%M:%S_%Y`'" -DCOMPILATION_DIR="'/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1'" -DNWCHEM_BRANCH="'6.1.1'" -c -o nwchem.o nwchem.F
ifort -g -I. -I/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/include -I/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/tools/include -DMACX -DPARALLEL_DIAG -DCOMPILATION_DATE="'`date +%a_%b_%d_%H:%M:%S_%Y`'" -DCOMPILATION_DIR="'/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1'" -DNWCHEM_BRANCH="'6.1.1'" -c -o stubs.o stubs.F
ifort -g -L/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/lib/MACX64 -L/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/tools/lib/MACX64 -o /opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/bin/MACX64/nwchem nwchem.o stubs.o -lnwctask -lccsd -lmcscf -lselci -lmp2 -lmoints -lstepper -ldriver -loptim -lnwdft -lgradients -lcphf -lesp -lddscf -ldangchang -lguess -lhessian -lvib -lnwcutil -lrimp2 -lproperty -lnwints -lprepar -lnwmd -lnwpw -lofpw -lpaw -lpspw -lband -lnwpwlib -lcafe -lspace -lanalyze -lqhop -lpfft -ldplot -ldrdy -lvscf -lqmmm -lqmd -letrans -lpspw -ltce -lbq -lcons -lperfm -ldntmc -lccca -lnwcutil -lpario -lglobal -lma -lpeigs -lperfm -lcons -lbq -lnwcutil -llapack -L/opt/intel/mkl/lib/ -lmkl_core -lmkl_sequential -lmkl_intel_ilp64 -lblas -L/opt/intel/mkl/lib/ -lmkl_core -lmkl_sequential -lmkl_intel_ilp64 -llapack -lblas -larmci -ltcgmsg-mpi -lmpi -lmpi_f90 -lmpi_f77
ld: warning: for symbol _inp_save_data_ tentative definition of size 16 from /opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/lib/MACX64/libnwcutil.a(inp_irange.o) is is smaller than the real definition of size 4 from /opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/lib/MACX64/libnwcutil.a(inp.o)
ld: warning: for symbol _sgroup_ tentative definition of size 8224 from /opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/lib/MACX64/libdntmc.a(gibbs.o) is being replaced by a real definition of size 8216 from /opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/lib/MACX64/libnwcutil.a(util_sgroup.o)
nwchem is built

Clicked A Few Times
3) cd $NWCHEM_TOP/src/inp ; make clean ; make FC=ifort
/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/bin/MACX64/depend.x -I/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/tools/include > dependencies
cp -p inp.fh /opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/include
touch include_stamp
gcc -c -I. -I/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/include -I/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/tools/include -DMACX -DPARALLEL_DIAG -g -o c_inp.o c_inp.c
ifort -c -g -I. -I/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/include -I/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/tools/include -DMACX -DPARALLEL_DIAG hnd_rdfree.F
ifort -c -I. -I/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/include -I/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/tools/include -DMACX -DPARALLEL_DIAG inp.F
ifort -c -I. -I/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/include -I/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/tools/include -DMACX -DPARALLEL_DIAG inp_irange.F
ifort -c -I. -I/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/include -I/opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/src/tools/include -DMACX -DPARALLEL_DIAG inp_ilist.F
Got lock on /opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/lib/MACX64/libnwcutil.lock
ar r /opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/lib/MACX64/libnwcutil.a c_inp.o hnd_rdfree.o inp.o inp_irange.o inp_ilist.o
/opt/local/bin/ranlib: file: /opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/lib/MACX64/libnwcutil.a(util_md_c.o) has no symbols
ranlib /opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/lib/MACX64/libnwcutil.a
ranlib: file: /opt/app/darwin-x86/nwchem2/test/nwchem-6.1.1/lib/MACX64/libnwcutil.a(util_md_c.o) has no symbols

Forum Vet
Rémi
Since we (i.e. the nwchem developers) have never used ifort on the MACX64 platform,
an essential compiler option (-i8) is missing in your compilation.
My advise is to stick to gfortran, since that's the compiler we have been using.
The other option is to try to add the ifort option to the NWChem makefile structure.
Cheers, Edo


Forum >> NWChem's corner >> Compiling NWChem