[petsc-users] makefile for compiling multiple sources
Matthew Overholt
overholt at capesim.com
Fri Mar 18 09:49:02 CDT 2016
Hi,
I'm just getting started with PETSc and have been able to configure and run
the examples, but as I'm starting to put together a more substantial code
with multiple source files I haven't been able to find or create a makefile
which works and follows PETSc guidelines.
I've configured and am building with the Intel compilers and MKL for blas &
lapack, as per the installation example, and with the C++ language.
Here's my makefile --------------------------------------
#
# makefile for femex1 - PETSc/kde/ex1.c adapted for FEA
#
# Usage: make all
# make clean
#
# PETSc was configured using the Intel Compilers, MKL, and C++
#
CFLAGS =
CPPFLAGS =
CLFLAGS =
LIBFILES = ${PETSC_KSP_LIB}
TARGET = femex1
CLEANFILES = $(TARGET)
include ${PETSC_DIR}/lib/petsc/conf/variables
include ${PETSC_DIR}/lib/petsc/conf/rules
OBJFILES = femex1.o \
shapes.o
all: $(TARGET)
$(TARGET) : $(OBJFILES) $(LIBFILES)
${CLINKER} -o $(TARGET) $(OBJFILES) $(LIBFILES)
# femex1.cpp has 'main' and PETSc calls
femex1.o: femex1.cpp lists.h shapes.h chkopts
${PETSC_CXXCOMPILE} femex1.cpp
# shapes.cpp does not have any PETSc calls
shapes.o: shapes.cpp shapes.h
icpc -c shapes.cpp
And here's the result ------------------------------------
[Matt at HPCL1 mycode]$ make all
/opt/petsc/petsc-3.6.3/linux-gnu-intel/bin/mpicxx -c -wd1572 -g -fPIC
-I/opt/petsc/petsc-3.6.3/include
-I/opt/petsc/petsc-3.6.3/linux-gnu-intel/include femex1.cpp
icpc -c shapes.cpp
make: *** No rule to make target
`-Wl,-rpath,/opt/petsc/petsc-3.6.3/linux-gnu-intel/lib', needed by `femex1'.
Stop.
---------------------------------------------------------------
So it compiles the two sources, but then fails on the linking step.
Thanks in advance.
Matt Overholt
CapeSym, Inc.
---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20160318/ec0a6f2b/attachment.html>
More information about the petsc-users
mailing list