Hi. I downloaded mpiblacs-patch03.tgz and modified my Bmake.inc for
OpenMPI on Linux as following:
cat Bmake.inc | grep -v ^#
SHELL = /bin/sh
BTOPdir = $(HOME)/VASP/lib/BLACS
COMMLIB = MPI
PLAT = LINUX
BLACSdir = $(BTOPdir)/LIB
BLACSDBGLVL = 0
BLACSFINIT = $(BLACSdir)/blacsF77init_$(COMMLIB)-$(PLAT)-$(BLACSDBGLVL).a
BLACSCINIT = $(BLACSdir)/blacsCinit_$(COMMLIB)-$(PLAT)-$(BLACSDBGLVL).a
BLACSLIB = $(BLACSdir)/blacs_$(COMMLIB)-$(PLAT)-$(BLACSDBGLVL).a
MPIdir = /usr/local/openmpi-1.2.1
MPIdev = ch_p4
MPIplat = LINUX
MPIINCdir = $(MPIdir)/include
BTLIBS = $(BLACSFINIT) $(BLACSLIB) $(BLACSFINIT) $(MPILIB)
INSTdir = $(BTOPdir)/INSTALL/EXE
TESTdir = $(BTOPdir)/TESTING/EXE
FTESTexe = $(TESTdir)/xFbtest_$(COMMLIB)-$(PLAT)-$(BLACSDBGLVL)
CTESTexe = $(TESTdir)/xCbtest_$(COMMLIB)-$(PLAT)-$(BLACSDBGLVL)
----
SYSINC =
INTFACE = -Df77IsF2C
SENDIS =
BUFF =
TRANSCOMM = -DUseMpi2
WHATMPI =
SYSERRORS =
DEBUGLVL = -DBlacsDebugLvl=$(BLACSDBGLVL)
DEFS1 = -DSYSINC $(SYSINC) $(INTFACE) $(DEFBSTOP) $(DEFCOMBTOP) $(DEBUGLVL)
BLACSDEFS = $(DEFS1) $(SENDIS) $(BUFF) $(TRANSCOMM) $(WHATMPI) $(SYSERRORS)
---------
F77 = /usr/local/openmpi-1.2.1/bin/mpif77
F77NO_OPTFLAGS =
F77FLAGS = $(F77NO_OPTFLAGS) -O
F77LOADER = $(F77)
F77LOADFLAGS =
CC = /usr/local/openmpi-1.2.1/bin/mpicc
CCFLAGS = -O4
CCLOADER = $(CC)
CCLOADFLAGS =
ARCH = ar
ARCHFLAGS = r
RANLIB = ranlib
--------------
However, when I tried to compile I got this weird error that I googled
and only found one other person posted on the Internet.
make mpi
( cd SRC/MPI ; make )
make[1]: Entering directory `/home/struong/VASP/lib/BLACS/SRC/MPI'
( cd INTERNAL ; make -f ../Makefile I_int "dlvl=/home/struong/VASP/lib/BLACS" )
make[2]: Entering directory `/home/struong/VASP/lib/BLACS/SRC/MPI/INTERNAL'
make[2]: *** No rule to make target `BI_HypBS.o', needed by `I_int'. Stop.
make[2]: Leaving directory `/home/struong/VASP/lib/BLACS/SRC/MPI/INTERNAL'
make[1]: *** [INTERN] Error 2
make[1]: Leaving directory `/home/struong/VASP/lib/BLACS/SRC/MPI'
make: *** [MPI] Error 2
Could you help and tell me what I did wrong?
Thank you very much.
|