[petsc-users] Incompatible pointer type

Matthew Knepley knepley at gmail.com
Fri Jul 12 05:59:47 CDT 2024


On Fri, Jul 12, 2024 at 4:41 AM Ivan Luthfi <ivanluthfi5 at gmail.com> wrote:

> I get a warning about an incompatible pointer type when compile a code,
> anyone know how to fix this? make bin_MsFEM_poisson2D_DMDA mpicc -Wall -c
> PCMsFEM. c -isystem/home/ivan/petsc/opt-3. 21. 2/include PCMsFEM. c: In
> function ‘PCCreate_MsFEM’: PCMsFEM. c: 59: 33:
> ZjQcmQRYFpfptBannerStart
> This Message Is From an External Sender
> This message came from outside your organization.
>
> ZjQcmQRYFpfptBannerEnd
> I get a warning about an incompatible pointer type when compile a code,
> anyone know how to fix this?
>
> make bin_MsFEM_poisson2D_DMDA
> mpicc -Wall -c PCMsFEM.c -isystem/home/ivan/petsc/opt-3.21.2/include
> PCMsFEM.c: In function ‘PCCreate_MsFEM’:
> PCMsFEM.c:59:33: warning: assignment to ‘PetscErrorCode (*)(struct _p_PC
> *, PetscOptionItems *)’ {aka ‘int (*)(struct _p_PC *, struct
> _p_PetscOptionItems *)’} from incompatible pointer type ‘PetscErrorCode
> (*)(struct _p_PC *)’ {aka ‘int (*)(struct _p_PC *)’}
> [-Wincompatible-pointer-types]
>    59 |         pc->ops->setfromoptions = PCSetFromOptions_MsFEM;
>       |                                 ^
> mpicc -o bin_MsFEM_poisson2D_DMDA MsFEM_poisson2D_DMDA.o UserParameter.o
> FormFunction.o MsFEM.o PCMsFEM.o
> /home/ivan/petsc/opt-3.21.2/lib/libpetsc.so \
>         /home/ivan/petsc/opt-3.21.2/lib/libsuperlu_dist.so \
>         /home/ivan/petsc/opt-3.21.2/lib/libparmetis.so \
>         /home/ivan/petsc/opt-3.21.2/lib/libmetis.so \
>         /usr/lib64/atlas/liblapack.a /usr/lib64/libblas.so.3
> /usr/bin/ld: cannot find /usr/lib64/atlas/liblapack.a: No such file or
> directory
> /usr/bin/ld: cannot find /usr/lib64/libblas.so.3: No such file or directory
> collect2: error: ld returned 1 exit status
> make: *** [makefile:18: bin_MsFEM_poisson2D_DMDA] Error 1
>

As the error message says, you are missing the second argument in your
function. Here is an example from PETSc itself:


https://urldefense.us/v3/__https://petsc.org/main/src/ksp/pc/impls/jacobi/jacobi.c.html*PCSetFromOptions_Jacobi__;Iw!!G_uCfscf7eWS!YNTtUlBhxN1oRmv-wQa9_XiOB4c3ylJzvdw0j3lk02txhvFCujXDCzk2N1vy3r2K9JIIBbZ-f_3xM62LxM13$ 

  Thanks,

     Matt


> --
> Best regards,
>


-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener

https://urldefense.us/v3/__https://www.cse.buffalo.edu/*knepley/__;fg!!G_uCfscf7eWS!YNTtUlBhxN1oRmv-wQa9_XiOB4c3ylJzvdw0j3lk02txhvFCujXDCzk2N1vy3r2K9JIIBbZ-f_3xM93D47Rc$  <https://urldefense.us/v3/__http://www.cse.buffalo.edu/*knepley/__;fg!!G_uCfscf7eWS!YNTtUlBhxN1oRmv-wQa9_XiOB4c3ylJzvdw0j3lk02txhvFCujXDCzk2N1vy3r2K9JIIBbZ-f_3xM1LCmhaP$ >
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20240712/7d52dd55/attachment.html>


More information about the petsc-users mailing list