[petsc-users] VecGetArrayReadF90 and VecRestoreArrayReadF90 not found on link

Barry Smith bsmith at petsc.dev
Sun Mar 23 19:59:42 CDT 2025


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

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


More information about the petsc-users mailing list