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

Sanjay Govindjee s_g at berkeley.edu
Sun Mar 23 19:35:13 CDT 2025


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/22c7db55/attachment.html>


More information about the petsc-users mailing list