Paraview 5.8 segmentation fault at start on CentOS 7 only after building OpenFOAM-v2006

Hello everyone,

I hope everyone is staying safe and keeping well. So I started facing this issue recently.

I am working wirh CentOS 7 running inside vmware on windows 10. I’m running centOS because many commercial simulation software only work on centOS/rhel. Now the default repo version of paraview is 4.4. I did download all the latest precompiled software to circumvent this. I downloaded the Paraview 5.8 mpi python 3 version from the paraview download page. When I launched it from the extracted dir it ran fine. Same with Blender 2.9 and scilab.

Now I started compiling openfoam 2006 (which did succeed). However now when I try to launch paraview 5.8 it segfaults during start. However blender still works so it can’t be a graphics issue? Anyone know why it segfaults?

I deleted the .config/paraview file to start fresh howver it didn’t help. Funny thing is paraview 4.4 installed from the repo works. So is this some dependencies conflicting? It shouldn’t since iirc the paraview tar file includes all dependencies and it did work before?

Any ideas ?

If you run ParaView from a terminal, do you have any interesting output ?

Unfortunately no,

Inside terminal when I type ./paraview it just outputs Segmentation Fault (Core Dump)

That would be hard to debug. You could either :

  • Build ParaView 5.8.1 from source
  • Try again in another VM to understand at which point did ParaView stopped working.

Could mpi versions be an issue ?

I had to employ module load mpi to get mpirun to work with openfoam?

To use the binary release of ParaView with mpi, you should use the mpi provided within it, not your system mpi.

Let me try to see if I reverse the module load openmpi and see if that fixes it. I’ll try this when I wake up tomorrow.

Thanks

Another thing I would try is to scrub your PATH variable. Could be the installation of openfoam has PARAVIEW picking up a different system library?

@mwestphal @wascott

So Good news, it seems if I first use module purge to unload system openmpi then I can launch paraview with the./paraview command. However I do need the openmpi module to be loaded to use openfoam, is there a way I can set paraview to not use system openmpi?

+1 on Alan’s suggestion. OpenFOAM tends to set up a controlled environment IE $FOAM/etc/bashrc, optionally including its own version of ParaView aka parafoam. It is more than likely that this environment is conflicting with the ParaView that you built.

A new shell may be sufficient, depending on what the installs did.

It definitely seems using module purge to unload openmpi system module worked, since I can start Paraview Binary. However it seems I do need the openmpi module to be loaded for openfoam and other software which I plan on building (SU2, Elmer). For now I just using a bashrc function as a workaround:

function paraview {
module purge;
/home/CentOS-VM/.root/opt/ParaView-5.8.1-MPI-Linux-Python3.7-64bit/bin/paraview
module load mpi/openmpi-x86_64;
};

As this could call paraview using this function name, and when I quit, it automatically loads mpi module again. Only downside is I cant use paraFoam, gotta use touch .foam to create a file and then run paraview.

Alternatively, you can build ParaView with your system MPI.