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

Steve Ndengue steve.ndengue at gmail.com
Thu Apr 24 19:57:40 CDT 2014


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 <mailto: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



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20140424/e79d4768/attachment-0001.html>


More information about the petsc-users mailing list