LAM/MPI logo

LAM/MPI General User's Mailing List Archives

  |   Home   |   Download   |   Documentation   |   FAQ   |   all just in this list

From: x z (hzmonte_at_[hidden])
Date: 2003-06-26 15:49:15


>On Thu, 26 Jun 2003, x z wrote:
>
> > Well, this seems to be more makefile-related than lam-related. I think
> > the problem lies in the following part of my makefile:
> >
> > blacstest.o : blacstest.f
> > $(F77) $(F77NO_OPTFLAGS) -c $*.f
> >
> > $(TESTdir)/bt.dat : $(BTOPdir)/TESTING/bt.dat
> > cp $(BTOPdir)/TESTING/bt.dat $(TESTdir)/
> >
> > where
> > HOME = /home/SCALAPACK
> > BTOPdir = $(HOME)/BLACS
> > TESTdir = $(BTOPdir)/TESTING/EXE
> >
> > gmake complains of some circular dependency. Though I suspect this is
> > makefile-related, if anyone can help, I greatly appreciate it.
>
>Unfortunately, I don't think this is enough of the Makefile to tell what
>the problem is.

Below are the Makefile and the Bmake.inc. many many many thanks.

/home/SCALAPACK/BLACS/Bmake.inc :
#===============================================================
#====================== SECTION 1: PATHS AND LIBRARIES ==================
#===============================================================
   SHELL = /bin/sh ## I am using tcsh, does it matter?
   HOME = /home/SCALAPACK_ROOT
   BTOPdir = $(HOME)/BLACS
   COMMLIB = MPI
   PLAT = SUN4SOL2
   BLACSdir = $(BTOPdir)/LIB
   BLACSDBGLVL = 1 ##changed
   BLACSFINIT =
$(BLACSdir)/blacsF77init_$(COMMLIB)-$(PLAT)-$(BLACSDBGLVL).a
   BLACSCINIT = $(BLACSdir)/blacsCinit_$(COMMLIB)-$(PLAT)-$(BLACSDBGLVL).a
   BLACSLIB = $(BLACSdir)/blacs_$(COMMLIB)-$(PLAT)-$(BLACSDBGLVL).a
   MPIdir = /home/lam-6.5.9
   MPILIBdir = $(MPIdir)/lib
   MPIINCdir = $(MPIdir)/include ##needed to compile mpif.h
   MPILIB = $(MPILIBdir)/libmpi.a

# -------------------------------------
# All libraries required by the tester.
# -------------------------------------
   BTLIBS = $(BLACSFINIT) $(BLACSLIB) $(BLACSFINIT) $(MPILIB) -lsocket -lnsl

   INSTdir = $(BTOPdir)/INSTALL/EXE

# ------------------------------------------------
# The name and location of the tester's executable
# ------------------------------------------------
   TESTdir = $(BTOPdir)/TESTING/EXE
   FTESTexe = $(TESTdir)/xFbtest_$(COMMLIB)-$(PLAT)-$(BLACSDBGLVL)
   CTESTexe = $(TESTdir)/xCbtest_$(COMMLIB)-$(PLAT)-$(BLACSDBGLVL)
#===============================================================
#=============================== End SECTION 1 =====================
#===============================================================

#===============================================================
#========================= SECTION 2: BLACS INTERNALS ==================
#===============================================================
   SYSINC = -I$(MPIINCdir)
   INTFACE = -DAdd_
   SENDIS =
   BUFF =
   TRANSCOMM = -DUseMpi2 ##changed per www.lam-mpi.org/3rd-party/blacs.php3
   WHATMPI =
   SYSERRORS =
   DEBUGLVL = -DBlacsDebugLvl=$(BLACSDBGLVL)
   DEFS1 = -DSYSINC $(SYSINC) $(INTFACE) $(DEFBSTOP) $(DEFCOMBTOP)
$(DEBUGLVL)
   BLACSDEFS = $(DEFS1) $(SENDIS) $(BUFF) $(TRANSCOMM) $(WHATMPI)
$(SYSERRORS)
#===============================================================
#=============================== End SECTION 2 =====================
#===============================================================

#===============================================================
#=========================== SECTION 3: COMPILERS
#===============================================================

   F77 = mpif77 ##changed per
www.lam-mpi.org/3rd-party/blacs.php3
   F77NO_OPTFLAGS =
   F77FLAGS = $(F77NO_OPTFLAGS) -fno-globals -O4
   F77LOADER = $(F77)
   F77LOADFLAGS =
   CC = mpicc ##changed per lam-mpi.org
   CCFLAGS = -O3
   CCLOADER = $(CC)
   CCLOADFLAGS =

   ARCH = ar
   ARCHFLAGS = r
   RANLIB = ranlib

#===============================================================
#=============================== End SECTION 3 =====================
#===============================================================

**********************************************************************************
**********************************************************************************

/home/SCALAPACK/BLACS/TESTING/Makefile :

include ../Bmake.inc
tools = tools.o
exe : all
ctest : $(CTESTexe) dat
ftest : $(FTESTexe) dat
all : $(FTESTexe) $(CTESTexe) dat
dat : $(TESTdir)/bt.dat $(TESTdir)/sdrv.dat $(TESTdir)/bsbr.dat \
      $(TESTdir)/comb.dat

obj = blacstest.o btprim_$(COMMLIB).o

$(CTESTexe): $(obj) $(tools)
        $(CC) -c $(CCFLAGS) -DBTCINTFACE $(BLACSDEFS) Cbt.c
        $(F77LOADER) $(F77LOADFLAGS) -o $@ $(obj) $(tools) Cbt.o $(BTLIBS)

$(FTESTexe): $(obj) $(tools)
        $(F77LOADER) $(F77LOADFLAGS) -o $@ $(obj) $(tools) $(BTLIBS)

tools.o : tools.f
        $(F77) $(F77NO_OPTFLAGS) -c $*.f

blacstest.o : blacstest.f
       $(F77) $(F77NO_OPTFLAGS) -c $*.f

$(TESTdir)/bt.dat : $(BTOPdir)/TESTING/bt.dat
       cp $(BTOPdir)/TESTING/bt.dat $(TESTdir)/

$(TESTdir)/sdrv.dat : $(BTOPdir)/TESTING/sdrv.dat
       cp $(BTOPdir)/TESTING/sdrv.dat $(TESTdir)/

$(TESTdir)/bsbr.dat : $(BTOPdir)/TESTING/bsbr.dat
       cp $(BTOPdir)/TESTING/bsbr.dat $(TESTdir)/

$(TESTdir)/comb.dat : $(BTOPdir)/TESTING/comb.dat
       cp $(BTOPdir)/TESTING/comb.dat $(TESTdir)/

btprim_MPI.o : btprim_MPI.f
       make mpif.h
       $(F77) -c $(F77FLAGS) $*.f

btprim_PVM.o : btprim_PVM.f
       make fpvm3.h
       $(F77) -c $(F77FLAGS) $*.f

mpif.h : $(MPIINCdir)/mpif.h
        rm -f mpif.h
        ln -s $(MPIINCdir)/mpif.h mpif.h

fpvm3.h : $(PVMINCdir)/fpvm3.h
        rm -f fpvm3.h
        ln -s $(PVMINCdir)/fpvm3.h fpvm3.h

clean :
        rm -f $(obj) tools.o Cbt.o mpif.h fpvm3.h

#.f.o: ; $(F77) -c $(F77FLAGS) $*.f

**********************************************************************************
**********************************************************************************

Again, my problem is:
% pwd
/home/SCALAPACK/BLACS/TESTING
prompt% make
mpif77 -c blacstest.f
*** Error code 2
make: Fatal error: Command failed for target `blacstest.o'

_________________________________________________________________
Help STOP SPAM with the new MSN 8 and get 2 months FREE*
http://join.msn.com/?page=features/junkmail