MmgTools/ParMmg

Undeclared MPI symbols

Closed this issue · 2 comments

prj- commented

There are compilation failures with old MPI implementations, see https://community.freefem.org/t/make-petsc-slepc-errors-on-centos-6-10/960.

/home/xlzheng/local/FreeFem-sources/3rdparty/ff-petsc/petsc-3.15.0/fr/externalpackages/git.parmmg/src/zaldy_pmmg.c: In function 'PMMG_parmesh_SetMemGloMax':
/home/xlzheng/local/FreeFem-sources/3rdparty/ff-petsc/petsc-3.15.0/fr/externalpackages/git.parmmg/src/zaldy_pmmg.c:65:5: warning: implicit declaration of function 'MPI_Comm_split_type' [-Wimplicit-function-declaration]
     MPI_Comm_split_type( parmesh->comm, MPI_COMM_TYPE_SHARED, 0, MPI_INFO_NULL,
     ^
/home/xlzheng/local/FreeFem-sources/3rdparty/ff-petsc/petsc-3.15.0/fr/externalpackages/git.parmmg/src/zaldy_pmmg.c:65:41: error: 'MPI_COMM_TYPE_SHARED' undeclared (first use in this function)
     MPI_Comm_split_type( parmesh->comm, MPI_COMM_TYPE_SHARED, 0, MPI_INFO_NULL,
                                         ^
/home/xlzheng/local/FreeFem-sources/3rdparty/ff-petsc/petsc-3.15.0/fr/externalpackages/git.parmmg/src/zaldy_pmmg.c:65:41: note: each undeclared identifier is reported only once for each function it appears in

It would be nice to either bypass the failures or error out more gracefully, maybe at configure time?

Hello,
Yes, thanks, we are using MPI >= 3 and the user is using a 2.1 version, so some variables do not exist yet and some function calls are different.
We will add a check on MPI_VERSION during configuration.

Luca