Hello all,
In the last week or so, I tried to configure and build libmesh with --enable-petsc-required, with a recent version of PETSc (v3.17.0).
I got an error in the configure process saying /path/to/petsc/include/petscversion.h usability ... no.
The usability check here is to check for successful compilation of a simple program with this header file, so if this failed the usability is no.
After some digging, I noticed that the culprit is the include statement #include <petscconf.h> in the file petscversion.h.
If I simple delete this include state, the configure script runs normally and PETSc is included as an optional package. However, I don't know the inner workings of PETSc or libmesh well, deleting an include statement seems to be a dangerous move.
By chance, I also found that in older versions of PETSc, this include statement doesn't exist. So in the end I just went with an older version (v.3.13.x) instead.
Has anyone else encountered this issue before? If so, did you find a work around? I have posted this also to the libmesh github discussion, and can update the answers here if there's any.
On Apr 20, 2022, at 7:09 AM, Y. Luna Lin <y.li...@gmail.com> wrote:Hello all,
In the last week or so, I tried to configure and build libmesh with --enable-petsc-required, with a recent version of PETSc (v3.17.0).
I got an error in the configure process saying /path/to/petsc/include/petscversion.h usability ... no.
The usability check here is to check for successful compilation of a simple program with this header file, so if this failed the usability is no.
After some digging, I noticed that the culprit is the include statement #include <petscconf.h> in the file petscversion.h.
If I simple delete this include state, the configure script runs normally and PETSc is included as an optional package. However, I don't know the inner workings of PETSc or libmesh well, deleting an include statement seems to be a dangerous move.By chance, I also found that in older versions of PETSc, this include statement doesn't exist. So in the end I just went with an older version (v.3.13.x) instead.