I need to build ParaView and it’s dependencies to run ParaView through Catalyst from our simulation code. I therefore need ParaView to be built against our environments, particularly our various MPIs.
I am trying to use the superbuild to achieve that. However, though the installation goes to completion without errors, it seems incomplete. In particular, I do not get ParaView Catalyst in the ParaView installation/lib64 directory I specified. Here are the commands I used:
Anything wrong with what I’m doing? Am I specifying the install target directory incorrectly? Is there superbuild build documentation outside of the readme?
Maybe something that would help me understand things: What commands / options do you use to generate the following ParaView from you download page:
ParaView-5.13.0-osmesa-MPI-Linux-Python3.10-x86_64.tar.gz
The CMAKE_INSTALL_PREFIX for the superbuild only really matters when the superbuild supports being installed. This is only really considered in the paraviewsdk project (which probably never got updated for catalyst support). Instead, use superbuild_install_location. All projects will then install directly to that location instead of <builddir>/install and it will have everything you need. Note that this will not be relocatable to other paths though.
Thanks, I will checkout this variable. Can you detail what you mean by not relocatable? Do you mean I cannot move the installation around? Indeed, I need to distribute ParaView with our software. I therefore need a self contained and movable installation.
The superbuild will (on Linux and macOS) use absolute paths to the libraries in rpaths and the like. The packaging step is what fixes them to be relative to each other so that it can live anywhere on a system.
Do you need an SDK too? If so, just libcatalyst or all of ParaView? If it is just the runtime, the existing (non-macOS) packaging should work to make a relocatable runtime bundle. Adding just libcatalyst development bits isn’t too hard as it is fairly self-contained though. However, given that libcatalyst is ABI-compatible, building against any suitable libcatalyst should be able to load the ParaView libcatalyst implementation.