Pvserver error: symbol lookup error: ../lib64/libvtkFiltersParallelMPI-pv5.9.so.1: undefined symbol: __svml_nextafterf4

Hello,
I built paraview 5.9 (from source) and linking it againts openmpi 4.0.5. Parview Qt client works, but when I execute pvserver I get the error:

symbol lookup error: ../lib64/libvtkFiltersParallelMPI-pv5.9.so.1: undefined symbol: __svml_nextafterf4

I did ldd on that library and I got the following ouput:

ldd ../lib64/libvtkFiltersParallelMPI-pv5.9.so.1
	linux-vdso.so.1 =>  (0x00007f2011c12000)
	/gpfs/runtime/opt/turbovnc/2.2.b1/lib/libdlfaker.so (0x00007f20115ca000)
	/gpfs/runtime/opt/turbovnc/2.2.b1/lib/libvglfaker.so (0x00007f2011276000)
	libvtkFiltersParallel-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkFiltersParallel-pv5.9.so.1 (0x00007f2010f7b000)
	libvtkFiltersExtraction-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkFiltersExtraction-pv5.9.so.1 (0x00007f2010bbb000)
	libvtkParallelMPI-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkParallelMPI-pv5.9.so.1 (0x00007f20109a3000)
	libvtkParallelCore-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkParallelCore-pv5.9.so.1 (0x00007f2010739000)
	libvtkIOLegacy-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkIOLegacy-pv5.9.so.1 (0x00007f201049b000)
	libvtkIOCore-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkIOCore-pv5.9.so.1 (0x00007f201020c000)
	libvtkFiltersHybrid-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkFiltersHybrid-pv5.9.so.1 (0x00007f200fefd000)
	libvtkImagingCore-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkImagingCore-pv5.9.so.1 (0x00007f200f99a000)
	libvtkFiltersGeometry-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkFiltersGeometry-pv5.9.so.1 (0x00007f200f6d5000)
	libvtkFiltersModeling-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkFiltersModeling-pv5.9.so.1 (0x00007f200f3fd000)
	libvtkFiltersSources-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkFiltersSources-pv5.9.so.1 (0x00007f200f12f000)
	libvtkFiltersTexture-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkFiltersTexture-pv5.9.so.1 (0x00007f200ef10000)
	libvtkFiltersGeneral-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkFiltersGeneral-pv5.9.so.1 (0x00007f200e8fe000)
	libvtkFiltersCore-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkFiltersCore-pv5.9.so.1 (0x00007f200e070000)
	libvtkCommonExecutionModel-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkCommonExecutionModel-pv5.9.so.1 (0x00007f200dd7e000)
	libvtkCommonDataModel-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkCommonDataModel-pv5.9.so.1 (0x00007f200d649000)
	libvtkCommonSystem-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkCommonSystem-pv5.9.so.1 (0x00007f200d42f000)
	libvtkCommonMisc-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkCommonMisc-pv5.9.so.1 (0x00007f200d20f000)
	libvtkCommonTransforms-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkCommonTransforms-pv5.9.so.1 (0x00007f200cfdc000)
	libvtkCommonMath-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkCommonMath-pv5.9.so.1 (0x00007f200cdb9000)
	libvtkCommonCore-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkCommonCore-pv5.9.so.1 (0x00007f200c412000)
	libvtksys-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtksys-pv5.9.so.1 (0x00007f200c1a9000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007f200bfa5000)
	libmpi.so.40 => /gpfs/runtime/opt/mpi/openmpi_4.0.5_intel_2020.2_slurm20/lib/libmpi.so.40 (0x00007f200bc63000)
	libimf.so => /gpfs/runtime/opt/intel/2017.0/lib/intel64/libimf.so (0x00007f200b777000)
	libsvml.so => /gpfs/runtime/opt/intel/2017.0/lib/intel64/libsvml.so (0x00007f200a861000)
	libirng.so => /gpfs/runtime/opt/intel/2017.0/lib/intel64/libirng.so (0x00007f200a4da000)
	libstdc++.so.6 => /gpfs/runtime/opt/gcc/8.3/lib64/libstdc++.so.6 (0x00007f200a156000)
	libm.so.6 => /lib64/libm.so.6 (0x00007f2009e54000)
	libgcc_s.so.1 => /gpfs/runtime/opt/gcc/8.3/lib64/libgcc_s.so.1 (0x00007f2009c3c000)
	libintlc.so.5 => /gpfs/runtime/opt/intel/2017.0/lib/intel64/libintlc.so.5 (0x00007f20099d2000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f20097b6000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f20093e8000)
	libGL.so.1 => /lib64/libGL.so.1 (0x00007f200915c000)
	libXv.so.1 => /lib64/libXv.so.1 (0x00007f2008f57000)
	libX11.so.6 => /lib64/libX11.so.6 (0x00007f2008c19000)
	libXext.so.6 => /lib64/libXext.so.6 (0x00007f2008a07000)
	libvtkFiltersStatistics-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkFiltersStatistics-pv5.9.so.1 (0x00007f20086db000)
	libvtkParallelDIY-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkParallelDIY-pv5.9.so.1 (0x00007f2008488000)
	libvtkdoubleconversion-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkdoubleconversion-pv5.9.so.1 (0x00007f200826e000)
	libvtklz4-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtklz4-pv5.9.so.1 (0x00007f200803e000)
	libvtklzma-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtklzma-pv5.9.so.1 (0x00007f2007e07000)
	libvtkzlib-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkzlib-pv5.9.so.1 (0x00007f2007be7000)
	libvtkImagingSources-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkImagingSources-pv5.9.so.1 (0x00007f20079a0000)
	libvtkRenderingCore-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkRenderingCore-pv5.9.so.1 (0x00007f200755c000)
	libvtkCommonComputationalGeometry-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkCommonComputationalGeometry-pv5.9.so.1 (0x00007f2007321000)
	libvtkpugixml-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkpugixml-pv5.9.so.1 (0x00007f20070b4000)
	libvtkloguru-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkloguru-pv5.9.so.1 (0x00007f2006e59000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f20119f3000)
	libopen-rte.so.40 => /gpfs/runtime/opt/mpi/openmpi_4.0.5_intel_2020.2_slurm20/lib/libopen-rte.so.40 (0x00007f2006b93000)
	libopen-pal.so.40 => /gpfs/runtime/opt/mpi/openmpi_4.0.5_intel_2020.2_slurm20/lib/libopen-pal.so.40 (0x00007f20068c8000)
	librt.so.1 => /lib64/librt.so.1 (0x00007f20066c0000)
	libutil.so.1 => /lib64/libutil.so.1 (0x00007f20064bd000)
	libz.so.1 => /lib64/libz.so.1 (0x00007f20062a7000)
	libhwloc.so.15 => /usr/local/lib/libhwloc.so.15 (0x00007f2006054000)
	libevent_core-2.1.so.7 => /usr/local/lib/libevent_core-2.1.so.7 (0x00007f2005e1e000)
	libevent_pthreads-2.1.so.7 => /usr/local/lib/libevent_pthreads-2.1.so.7 (0x00007f2005c1b000)
	libGLX.so.0 => /lib64/libGLX.so.0 (0x00007f20059e9000)
	libGLdispatch.so.0 => /lib64/libGLdispatch.so.0 (0x00007f2005733000)
	libxcb.so.1 => /lib64/libxcb.so.1 (0x00007f200550b000)
	libvtkImagingFourier-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkImagingFourier-pv5.9.so.1 (0x00007f20052dd000)
	libvtkIOXML-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkIOXML-pv5.9.so.1 (0x00007f2004faf000)
	libvtkIOXMLParser-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkIOXMLParser-pv5.9.so.1 (0x00007f2004d95000)
	libvtkCommonColor-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkCommonColor-pv5.9.so.1 (0x00007f2004b6c000)
	libXau.so.6 => /lib64/libXau.so.6 (0x00007f2004968000)
	libvtkexpat-pv5.9.so.1 => /gpfs/rt/7.2/opt/paraview/5.9.0/bin/../lib64/libvtkexpat-pv5.9.so.1 (0x00007f2004732000)

I wonder if you have any idea on what could be happening or how I can start debugging it?

Thanks

ParaView’s official binaries are built against MPICH. OpenMPI is not compatible with replacement in this way. The implementations which support it are listed on this page.

I have paraview server 5.8 working with OpenMPI 4.0.4. Did that change for 5.9 ?

That was never guaranteed to work. It seems that the MPI implementations have shifted underneath us and that lack of a guarantee is showing. If you want to use OpenMPI, you’ll need to recompile ParaView.

My mistake. I forgot to mention I am building paraview from source (I’ll update the main question). I work on a HPC environment and some libraries needs to be linked to the officially installed in the system.
The Setting up Paraview Server website guide uses OpenMPI for the example. That’s the only reason I have been working with OpenMPI.

Ah, ok, then we have something that can be investigated more :slight_smile: .

Ah, the wiki. There’s a lot of old information there. Since you’re in an HPC environment, I would use whatever the recommended MPI implementation is there.

However, that symbol seems to be a C or C++ standard library thing. Is everything agreeing on the compiler (or if not, at least the stdlib in use)? I see some Intel compiler hints in there. Maybe something used different GCC stdlib backends?

Thanks for the hint. You were right, the loaded libs pointed to a different c++ compiler. I switched to the intel compiler and it works now (again, using OpenMPI 4.0.5).