[petsc-users] multiple definition of `main' for a fortran example
Satish Balay
balay at mcs.anl.gov
Fri Sep 9 10:53:38 CDT 2022
Looks like this makefile has a bug. Try the following change:
diff --git a/src/dm/tutorials/makefile b/src/dm/tutorials/makefile
index d169ab13df4..53bdf48284c 100644
--- a/src/dm/tutorials/makefile
+++ b/src/dm/tutorials/makefile
@@ -14,5 +14,4 @@ include ${PETSC_DIR}/lib/petsc/conf/variables
include ${PETSC_DIR}/lib/petsc/conf/rules
include ${PETSC_DIR}/lib/petsc/conf/test
-ex13f90.o: ex13f90aux.o
-ex13f90: ex13f90.o ex13f90aux.o
+ex13f90: ex13f90aux.o
Satish
On Fri, 9 Sep 2022, erhan turan wrote:
> Hello,
>
> I recently installed the latest version of Petsc and tried to build a case
> with two fortran files (One main and one subroutine). I looked into similar
> examples and found one in petsc/src/dm/tutorials: ex13f90.F90. This code
> also needs a second file called ex13f90aux.F90
>
> When I tried to build this example with "make ex13f90", I receive this
> error warning:
>
> src/dm/tutorials/ex13f90.F90:24: multiple definition of `main'
> src/dm/tutorials/ex13f90.F90:24: first defined here
>
> Hence, I was unable to run an example case from the tutorials folder. I
> tested in two different pc's, one with Ubuntu 16 and one with Ubuntu 18.
> Both cases use gnu compilers. Also test both mpich and openmpi.
>
> Are there anyone that saw a similar problem who knows a workaround to
> resolve this issue? Maybe a makefile example with multiple fortran files
> would be useful. Thanks.
>
> Best,
> Erhan
>
More information about the petsc-users
mailing list