I’m trying to build ParaView on my machine so that it can read ADIOS2 (BP) files. I was following this topic and using the following flags: -DPARAVIEW_USE_MPI=ON -DPARAVIEW_USE_ADIOS2=ON.
CMake Warning:
Manually-specified variables were not used by the project:
PARAVIEW_USE_ADIOS2
However, I get the following warning and my build does not have the option to view ADIOS files. Could you tell me how I can build ParaView so that I can view these files?
Thanks - I should have read the other post properly.
I now get the following errors:
CMake Warning at VTK/CMake/vtkModule.cmake:5351 (find_package):
By not providing "FindADIOS2.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "ADIOS2", but
CMake did not find one.
Could not find a package configuration file provided by "ADIOS2" (requested
version 2.4) with any of the following names:
ADIOS2Config.cmake
adios2-config.cmake
Add the installation prefix of "ADIOS2" to CMAKE_PREFIX_PATH or set
"ADIOS2_DIR" to a directory containing one of the above files. If "ADIOS2"
provides a separate development package or SDK, be sure it has been
installed.
Call Stack (most recent call first):
VTK/IO/ADIOS2/CMakeLists.txt:1 (vtk_module_find_package)
CMake Error at VTK/CMake/vtkModule.cmake:5357 (message):
Could not find the ADIOS2 external dependency.
Call Stack (most recent call first):
VTK/IO/ADIOS2/CMakeLists.txt:1 (vtk_module_find_package)
Does this mean that I need to have an ADIOS2 installation for ParaView with ADIOS2 to work?
Indeed, ParaView relies on an external installation of ADIOS2. You first need to build ADIOS2, then build ParaView and specify the CMake variable ADIOS2_DIR.
You can also use the ParaView superbuild that can fetch and build the dependency for you.
Yes. Because ADIOS2 has a plugin API and anything VTK/ParaView vendors would mangle symbols and headers so that other plugins wouldn’t work (they’d need to recompiled against the mangled vtkADIOS2 symbols), it’s just simpler to always use an external ADIOS2 instead.