[petsc-dev] Are there both a function AND a #define to retrieve PETSc version?
Eric Chamberland
Eric.Chamberland at giref.ulaval.ca
Sat Aug 27 22:04:41 CDT 2016
Hi,
Le 2016-08-27 à 15:07, Barry Smith a écrit :
>> On Aug 27, 2016, at 1:59 PM, Jed Brown <jed at jedbrown.org> wrote:
>>
>> What about
>>
>> #define PetscInitialize(argc,argv,file,help) PetscInitialize_Private(argc,argv,file,help,PETSC_VERSION_MAJOR,PETSC_VERSION_MINOR,PETSC_VERSION_SUBMINOR,PETSC_VERSION_RELEASE)
>>
>> and PetscInitialize will check for ABI compatibility (error if not)?
> Ok
that's sounds good.
>> Note that subminor version (Eric's example) does not affect the ABI so
>> it's fine to have a mismatch there
> Well in Eric's case he knows he needs a bug fix in sub minor 3 and wants to generate an error if linked against an earlier one that does not have the bug fix. There needs to be a way for users to indicate if they need above something in the sub minor, doesn't there?
Exactly: and another thing: in our case, if we know we aren't compatible
with 3.7.2 because of a specific bug, I am already able to prevent it at
compile time, but not at run time if the user changes the dynamically
linked libs... So I still need some "public" function to check it...
I did just implemented the MPI runtime version check based on
"MPI_Get_library_version"... but maybe you will want to do it right into
petsc too... :)
thanks,
Eric
More information about the petsc-dev
mailing list