vtkPNetCDFPOPReader not building
I am getting this error when building ParaView from the master:
paraview/VTK/IO/ParallelNetCDF/vtkPNetCDFPOPReader.cxx:604:38: error: invalid conversion from ‘MPI_Datatype’ {aka ‘ompi_datatype_t*’} to ‘intptr_t’ {aka ‘long int’} [-fpermissive]
604 | buffer, (vtkTypeInt64)1, subArrayType, destRank, curDepth, sendReq);
| ^~~~~~~~~~~~
| |
| MPI_Datatype {aka ompi_datatype_t*}
and
paraview/VTK/IO/ParallelNetCDF/vtkPNetCDFPOPReader.cxx:605:35: error: ordered comparison of pointer with integer zero (‘MPI_Request’ {aka ‘ompi_request_t*’} and ‘int’)
605 | if (sendReq.Req->Handle >= 0)
| ~~~~~~~~~~~~~~~~~~~~^~~~
A build a month or so ago was clean.
It seems that the current vtk master has for this file (lines 602-606):
// using the depth value as the tag
this->Controller->NoBlockSend(
buffer, (vtkTypeInt64)1, subArrayType, destRank, curDepth, sendReq);
this->Internals->SendReqs.push_back(sendReq);
MPI_Type_free(&subArrayType);
And the VTK subdirectory in ParaView has (lines 602-614):
// using the depth value as the tag
this->Controller->NoBlockSend(
buffer, (vtkTypeInt64)1, subArrayType, destRank, curDepth, sendReq);
if (sendReq.Req->Handle >= 0)
{
this->Internals->SendReqs.push_back(sendReq);
}
else
{
vtkWarningMacro(<< "vtkPNetCDFPOPReader NoBlockSend unexpected MPI_Request val "
<< sendReq.Req->Handle);
}
MPI_Type_free(&subArrayType);
When I check out I do a git submodule update --init --recursive
so this should update the paraview vtk directory.