[petsc-users] Compiling program with program files dependencies (SLEPC )

Satish Balay balay at mcs.anl.gov
Thu Apr 24 22:14:07 CDT 2014


petsc examples work fine.

send us the code that breaks. Also copy/paste the *complete* output from 'make' when
you attempt to compile this code.

Satish

On Thu, 24 Apr 2014, Barry Smith wrote:

> 
>   Try .F files instead of .F90 some Fortran compilers handle preprocessing in different ways for .F and .F90
> 
>    Please also send configure.log and make.log so we know what compilers etc you are using.
> 
>   Barry
> 
>   Note that we are using C pre processing directives, 
> 
> On Apr 24, 2014, at 7:57 PM, Steve Ndengue <steve.ndengue at gmail.com> wrote:
> 
> > The results is the same with lower case letters...
> > 
> > 
> > On 04/24/2014 07:39 PM, Matthew Knepley wrote:
> >> On Thu, Apr 24, 2014 at 8:36 PM, Steve Ndengue <steve.ndengue at gmail.com> wrote:
> >> Thank you for the quick reply.
> >> 
> >> It partly solved the problem; the PETSC and SLEPC files are now included in the compilation.
> >> 
> >> However the Warning are now error messages!
> >> ***
> >> pgm_hatom_offaxis_cyl.F90:880:0: error: invalid preprocessing directive #INCLUDE
> >> pgm_hatom_offaxis_cyl.F90:887:0: error: invalid preprocessing directive #IF
> >> pgm_hatom_offaxis_cyl.F90:890:0: error: invalid preprocessing directive #ELSE
> >> pgm_hatom_offaxis_cyl.F90:893:0: error: invalid preprocessing directive #ENDIF
> >> ***
> >> 
> >> These should not be capitalized.
> >> 
> >>   Matt
> >>  
> >> And the corresponding code lines are:
> >> ***
> >> #INCLUDE <finclude/slepcepsdef.h>
> >>         USE slepceps
> >> 
> >> !
> >>  IMPLICIT NONE
> >> !----------------------
> >> !
> >> #IF DEFINED(PETSC_USE_FORTRAN_DATATYPES)
> >>         TYPE(Mat)                                          A
> >>         TYPE(EPS)                                          solver
> >> #ELSE
> >>         Mat                                                A
> >>         EPS                                                solver
> >> #ENDIF
> >> ***
> >> 
> >> Sincerely.
> >> 
> >> On 04/24/2014 07:25 PM, Satish Balay wrote:
> >>> On Thu, 24 Apr 2014, Steve Ndengue wrote:
> >>> 
> >>> 
> >>>> Dear all,
> >>>> 
> >>>> I am having trouble compiling a code with some dependencies that shall call
> >>>> SLEPC.
> >>>> The compilation however goes perfectly for the various tutorials and tests in
> >>>> the package.
> >>>> 
> >>>> A sample makefile looks like:
> >>>> 
> >>>> ***
> >>>> 
> >>>> /default: code//
> >>>> //routines: Rout1.o Rout2.o Rout3.o Module1.o//
> >>>> //code: PgmPrincipal//
> >>>> //sources=Rout1.f Rout2.f Rout3.f Module1.f90//
> >>>> 
> >>> Its best to rename your sourcefiles .F/.F90 [and not .f/.f90
> >>> [this enables using default targets from petsc makefiles - and its
> >>> the correct notation for preprocessing - which is required by petsc/slepc]
> >>> 
> >>> 
> >>>> //objets=Rout1.o Rout2.o Rout3.o Module1.o Pgm//Principal//.o//
> >>>> //
> >>>> //%.o: %.f//
> >>>> //        -${FLINKER} -c $<//
> >>>> 
> >>> And you shouldn't need to create the above .o.f target.
> >>> 
> >>> Satish
> >>> 
> >>> 
> >>> 
> >>>> //
> >>>> //Module1_mod.mod Module1.o: //Module1//.f90//
> >>>> //        -${FLINKER} -c //Module1//.f90//
> >>>> //
> >>>> //include ${SLEPC_DIR}/conf/slepc_common//
> >>>> //
> >>>> //Pgm//Principal//: ${objets} chkopts//
> >>>> //        -${FLINKER} -o $@ ${objets} ${SLEPC_LIB}//
> >>>> //
> >>>> //.PHONY: clean//
> >>>> //        ${RM} *.o *.mod Pgm//Principal//
> >>>> /
> >>>> ***
> >>>> 
> >>>> The code exits with Warning and error messages of the type:
> >>>> 
> >>>> *Warning: Pgm**Principal**.f90:880: Illegal preprocessor directive**
> >>>> **Warning: Pgm**Principal**.f90:889: Illegal preprocessor directive**
> >>>> **Warning: Pgm**Principal**.f90:892: Illegal preprocessor directive**
> >>>> **Warning: Pgm**Principal**.f90:895: Illegal preprocessor directive*
> >>>> 
> >>>> and
> >>>> 
> >>>> *USE slepceps**
> >>>> **                    1**
> >>>> **Fatal Error: Can't open module file 'slepceps.mod' for reading at (1): No
> >>>> such file or directory
> >>>> 
> >>>> 
> >>>> *I do not get these errors with the tests and errors files.
> >>>> 
> >>>> 
> >>>> Sincerely,
> >>>> 
> >>>> 
> >>>> 
> >> 
> >> 
> >> -- 
> >> Steve 
> >> 
> >> 
> >> 
> >> 
> >> -- 
> >> What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.
> >> -- Norbert Wiener
> > 
> > 
> > -- 
> > Steve 
> > 
> > 
> > 
> 
> 



More information about the petsc-users mailing list