Shown below is a sample makefile that demonstrates the path and usage of the libraries : This ScaLAPACK is built from the source download from www.netlib.org. The makefile (not shown) used to build ScaLAPACK is modified from make.sp2. Please feel free to use the built package at its current location. Email Kadin Tseng (kadin@bu.edu) or call him at 617-353-8294 if you need help.


# sample makefile to demonstrate ScaLAPACK usage
SHELL=/bin/sh
.SUFFIXES:	.o .f90 .f

SRC_FILES = a.f90 b.f90 c.f90

OBJ_FILES = $(SRC_FILES:.f90=.o)

FLAG = -qsuffix=f=f90
FC = blrts_xlf90 $(FLAG)
ABI = -qarch=440 -qtune=440 -qmaxmem=64000
MPI_PATH = /bgl/BlueLight/ppcfloor/bglsys
MPI_INC = -I${MPI_PATH}/include
MPI_LIB = -L$(MPI_PATH)/lib -lmpich.rts -lmsglayer.rts -lrts.rts -ldevices.rts
MPI_TRACE_LIB = -L/bgl/local/lib/mpitrace -lmpitrace_f
BLAS_LIB = /project/scv/kadin/packages/LAPACK_bgl/blas_BGL.a
LAPACK_LIB = /project/scv/kadin/packages/LAPACK_bgl/lapack_BGL.a
BLACS_LIB = /project/scv/kadin/packages/BLACS/LIB/blacs_MPI-BGL-0.a \
     /project/scv/kadin/packages/BLACS/LIB/blacsF77init_MPI-BGL-0.a \
     $(MPI_LIB) \
     /project/scv/kadin/packages/BLACS/LIB/blacsCinit_MPI-BGL-0.a \
     /project/scv/kadin/packages/BLACS/LIB/blacs_MPI-BGL-0.a
SCALAPACK_LIB = -L/project/scv/kadin/packages/SCALAPACK/ -lscalapack

LIB = $(MPI_TRACE_LIB) $(SCALAPACK_LIB) $(MPI_LIB) $(BLACS_LIB) $(BLAS_LIB)
OPT = -O3 -qhot

default: myexample
all: myexample

myexample: $(OBJ_FILES)
	$(FC) $(ABI) $(OPT) -o ../bin/$@ $(OBJ_FILES) $(LIB)

clean:
	rm -f $(OBJ_FILES)

cleanall:
	rm -f $(OBJ_FILES)
	rm -f myexample

.f90.o:
	$(FC) $(ABI) $(OPT) $(MPI_INC) -c $*.f90
.f.o:
	$(FC) $(ABI) $(OPT) $(MPI_INC) -c $*.f