Amber on Seawulf (compilation)

From Rizzo_Lab
Revision as of 13:08, 11 December 2009 by Tbalius (talk | contribs) (compiling Amber10)
Jump to: navigation, search

compiling Amber9

Follow the steps in the INSTALL file.

At step 5, edit config.h by change g95 to gfortrain.

The following lib file is not found by the compiler

 /usr/include/X11/extensions/shape.h

I copied the following dir from another machine:

 /usr/include/X11/extensions

and put it in my home dir in:

 ~/usr/include/X11/extensions

I modified the files changing the reported line number:

/nfs/user03/tbalius/amber9/src/leap/src/Xmu/ShapeWidg.c line: 27 
/nfs/user03/tbalius/amber9/src/leap/src/Xraw/Logo.c     line: 26
/nfs/user03/tbalius/amber9/src/leap/src/Xraw/Mailbox.c  line: 64 

from:
#include <X11/extensions/shape.h>
to:
#include </nfs/user03/tbalius/usr/include/X11/extensions/shape.h>

instead we should have

 /usr/include/X11/extensions/shape.h  	 x11proto-xext-dev

installed.


I get the following Error:

/usr/bin/ld: cannot find -lXext

possible solutions:


cd /usr/lib
ln -s ./libXext.so.6.4.0 ./libXext.so

instead I did the following:

cd ~/user
mkdir lib
ln -s /usr/lib/libXext.so.6.4.0 libXext.so
cd ../
ln -s lib lib64
ln -s lib lib32

Then I changed the following file at the specified line:

 amber9/src/leap/src/leap/Makefile  line:117

from:

../Xmu/libXmu.a $(XLIBS) -lXt -lXext -lSM -lICE -lX11 $(LM) -lpthread

to:

../Xmu/libXmu.a -L/nfs/user03/tbalius/usr/lib/ -lXext -L/usr/lib/ -lXt -lSM -lICE -lX11 -lm -lpthread

MAKE PARALLEL

./configure -mpich2 -p4 gfortran
AMBERHOME is set to /nfs/user03/tbalius/amber9
Setting up Amber configuration file for architecture: gfortran
Using parallel communications library: mpich2
MPI_HOME is set to /nfs/user03/tbalius/mpich2-install
 ./configure: line 314: /nfs/user03/tbalius/mpich2-install/bin/mpif90: No such file or directory
The MKL_HOME environment variable is not defined.

The configuration file, config.h, was successfully created.


Because of the bold error, we change configure file at line 313:

from:

    loadlib=`$MPI_HOME/bin/mpif90 -show | perl -p -e 's/(-[lL]\S+\s)|\S+\s/$1/g'`

to:

    loadlib=`$MPI_HOME/bin/mpif77 -show | perl -p -e 's/(-[lL]\S+\s)|\S+\s/$1/g'`

compiling Amber10

while making amber10 tools I get the following error:

  ShapeWidg.c:27:34: error: X11/extensions/shape.h: No such file or directory

Like above changed the same files:

From:

Xmu/ShapeWidg.c:#include <X11/extensions/shape.h>
Xraw/Logo.c:#include <X11/extensions/shape.h>
Xraw/Mailbox.c:#include <X11/extensions/shape.h>

To:

Xmu/ShapeWidg.c:#include </nfs/user03/tbalius/usr/include/X11/extensions/shape.h>
Xraw/Logo.c:#include </nfs/user03/tbalius/usr/include/X11/extensions/shape.h>
Xraw/Mailbox.c:#include </nfs/user03/tbalius/usr/include/X11/extensions/shape.h>


Next, I get the same error as in amber9.

 /usr/bin/ld: cannot find -lXext

During linking.

I change the following file at the specified line:

amber10/src/leap/src/leap/Makefile at line 114
from 
    ../Xmu/libXmu.a $(XLIBS) -lXt -lXext -lSM -lICE -lX11 -lXau -lXdmcp $(LM) -lpthread
to
    ../Xmu/libXmu.a $(XLIBS) -lXt -lSM -lICE -lX11 -lXau -lXdmcp -L/nfs/user03/tbalius/usr/lib -lXext $(LM) -lpthread


Problem with testing amber tools:

Running test to compute GB Newton-Raphson and normal modes:

/nfs/user03/tbalius/amber10/lib/libnab.a(newton.o): In function `newton':
newton.c:(.text+0xba8): undefined reference to `assert'
/nfs/user03/tbalius/amber10/lib/libnab.a(nmode.o): In function `nmode':
nmode.c:(.text+0x511e): undefined reference to `assert'
collect2: ld returned 1 exit status
cc failed! 
make[1]: *** [asp_test] Error 1
make[1]: Leaving directory `/nfs/user03/tbalius/amber10/test/nab'
make: *** [test.nab] Error 2

every thing else ran.

configure amber with gfortran

./configure_amber gfortran

Because I am compiling a cheek out from the CVS tree I had to modify 4 files in the source the source code in

when running

 make serial 

First is seems that the following file need to be placed to the following dir and it is not being copied there:

after:

make serial 
cp /nfs/user03/tbalius/amber10/src/sander/qmmm_module.mod /nfs/user03/tbalius/amber10/src/dcqtp/mod/ 


I get the following error:

 gfortran: ../../sander: linker input file unused because linking not done
 gfortran -c -O1 -fno-automatic   -ffree-form ../../sander -I../src/include -DHAS_LAPACK -DQMMM -o ../obj/freq_qmmm.o ../src/freq/freq.F90
 ../src/freq/freq.F90:11.38:
    use qmmm_module, only: qmmm_struct, qmmm_div
                                    1
 Error: Symbol 'qmmm_div' referenced at (1) not found in module 'qmmm_module'

../src/freq/freq.F90:38.26:

   dimension dcl(3,qmmm_div%ntotatm+qmmm_struct%nlink)
                        1
 Error: Expected another dimension in array declaration at (1)
 make[3]: *** [../obj/freq_qmmm.o] Error 1
 make[3]: Leaving directory `/nfs/user03/tbalius/amber10/src/dcqtp/mod'
 make[2]: *** [libdivcon.a] Error 2
 make[2]: Leaving directory `/nfs/user03/tbalius/amber10/src/dcqtp'
 make[1]: *** [divcon] Error 2
 make[1]: Leaving directory `/nfs/user03/tbalius/amber10/src/sander'
 make: *** [serial] Error 2


change the following lines:

 amber10/src/dcqtp/src/freq/freq.F90:11:
  use qmmm_module, only: qmmm_struct, qmmm_div
amber10/src/dcqtp/src/freq/freq.F90~:38:
 dimension dcl(3,qmmm_div%ntotatm+qmmm_struct%nlink)
amber10/src/dcqtp/src/mem/allocateScrfVars.F90~:10:
 use qmmm_module, only : qmmm_struct, qmmm_div
amber10/src/dcqtp/src/mem/allocateScrfVars.F90~:45:
 allocate (atarea(qmmm_div%ntotatm+qmmm_struct%nlink), stat=ierror)
amber10/src/dcqtp/src/pb/pbsolver.F90~:36:
 use qmmm_module, only : qmmm_struct, qmmm_nml, qmmm_div
amber10/src/dcqtp/src/pb/pbsolver.F90~:73:
       allocate(charges(qmmm_div%ntotatm+qmmm_struct%nlink),stat=ier)
amber10/src/dcqtp/src/pb/pbsolver.F90~:123:
             do i=1,qmmm_div%ntotatm+qmmm_struct%nlink
amber10/src/dcqtp/src/pb/pbsolver.F90~:131:
                     call divpb(qmmm_div%ntotatm+qmmm_struct%nlink, &
amber10/src/dcqtp/src/pb/pbsolver.F90~:133:
                     qmmm_div%all_atom_numbers, &
amber10/src/dcqtp/src/pb/pbsolver.F90~:142:
            do i=1,qmmm_div%ntotatm+qmmm_struct%nlink
amber10/src/dcqtp/src/pb/pbsolver.F90~:151:
                    do j=qmmm_div%ntotatm+qmmm_struct%nlink,i,-1
amber10/src/dcqtp/src/pb/pbsolver.F90~:162:
                    do j=qmmm_div%ntotatm+qmmm_struct%nlink,i,-1
amber10/src/dcqtp/src/pb/pbsolver.F90~:163:
                       temp = qmmm_div%all_atom_numbers(j-1)
amber10/src/dcqtp/src/pb/pbsolver.F90~:164:
                       qmmm_div%all_atom_numbers(j)=temp
amber10/src/dcqtp/src/pb/pbsolver.F90~:166:
                    qmmm_div%all_atom_numbers(i)=1
amber10/src/dcqtp/src/pb/pbsolver.F90~:184:
            call divpb(qmmm_div%ntotatm+qmmm_struct%nlink, &
/nfs/user03/tbalius/amber10/src/dcqtp/src/pb/pbsolver.F90~:186:
                     qmmm_div%all_atom_numbers, &