I'm trying to compile parfeap under FEAPv83. It seems that the makefiles are configured for an older version of petsc. I am using petsc 3.3, which is the latest for now.
I configured the makefiles to include
/conf/petsc/petscvariables
and /conf/petsc/petscrules
instead of /bmake/common/base. The F files are preprocessed and the petsc headers are included, but I get errors as such:
/usr/petsc/arch-linux2-cxx-opt/include/finclude/petscmat.h:45.64:
Included at parbmat.F:28:
integer(kind=selected_int_kind(5)) MAT_IGNORE_ZERO_ENTRIES
1
Error: Symbol 'mat_ignore_zero_entries' at (1) already has basic type of INTEGER
which means that petsc variables are declared more than once. But none of the headers are included twice. The headers included in parbmat.F:
# include "finclude/petsc.h"
# include "finclude/petscksp.h"
# include "finclude/petscvec.h"
# include "finclude/petscmat.h"
# include "pfeapa.h"
# include "setups.h"
# include "pfeapb.h"
# include "pfeapc.h"
# include "sdata.h"
It would be great if someone had this problem before and knew its solution. I figured I'd ask here before delving into the source.
Thanks in advance