[petsc-users] VecGetArrayReadF90 and VecRestoreArrayReadF90 not found on link
Satish Balay
balay.anl at fastmail.org
Sun Mar 23 21:32:42 CDT 2025
Perhaps:
#define XXXF90() XXX()
Eventhough it won't give deprecated message to user - it will get the code compiling. [and these routines don't need to go away]
Satish
On Sun, 23 Mar 2025, Barry Smith wrote:
>
> With the update for the Fortran binding all the XXXF90 routines have been renamed to not include the F90 suffix.
>
> Barry
>
> I tried to provide deprecated versions but found it was too difficult to keep the old name routines also.
>
> > On Mar 23, 2025, at 8:35 PM, Sanjay Govindjee via petsc-users <petsc-users at mcs.anl.gov> wrote:
> >
> > Working off the main branch, I am trying to compile a code that uses VecGetArrayReadF90 and VecRestoreArrayReadF90.
> > The subroutines all compile but at link, I am encountering
> > Undefined symbols for architecture x86_64:
> > "_vecgetarrayreadf90_", referenced from:
> > _parbmat_ in parbmat.o
> > _psprojb_ in psprojb.o
> > _psubsp_ in psubsp.o
> > _usolve_ in usolve.o
> > _paropm_ in libparpack.a(paropm.o)
> > _pminvsqr_ in libparpack.a(pminvsqr.o)
> > _parkv_ in libparpack.a(parkv.o)
> > ...
> > "_vecrestorearrayreadf90_", referenced from:
> > _parbmat_ in parbmat.o
> > _psprojb_ in psprojb.o
> > _psubsp_ in psubsp.o
> > _usolve_ in usolve.o
> > _paropm_ in libparpack.a(paropm.o)
> > _pminvsqr_ in libparpack.a(pminvsqr.o)
> > _parkv_ in libparpack.a(parkv.o)
> > Searching the repo I do not see these any place (the closest is DMDAVecGetArrayReadF90 and DMDAVecRestoreArrayReadF90).
> > I do see VecGetArrayRead and VecRestoreArrayRead, which will resolve my linking issues, but I recall that these were supposed to be depricated in favor of the ...ReadF90 version.
> >
> > -sanjay
> > --
> >
> >
>
>
More information about the petsc-users
mailing list