Superbuild error "Could NOT find Python3" with 5.6.0-RC2

Hi all,

I get the error that superbuild can’t find Python3. This especially confuses me since I don’t use the system-provided python. I would expect superbuild to fetch is automatically.

Here are my cmake options:

cmake
-DENABLE_qt5:BOOL=OFF
-DENABLE_egl:BOOL=ON
-DEGL_INCLUDE_DIR:PATH=/usr/lib/nvidia-384
-DEGL_LIBRARY:FILEPATH=/usr/lib/nvidia-384/libEGL.so
-DEGL_opengl_LIBRARY:FILEPATH=/usr/lib/nvidia-384/libOpenGL.so
-DEGL_gldispatch_LIBRARY:FILEPATH=/usr/lib/nvidia-384/libGLdispatch.so.0
-DENABLE_hdf5:BOOL=ON
-DENABLE_szip:BOOL=ON
-DENABLE_paraview:BOOL=ON
-DENABLE_mesa:BOOL=OFF
-DENABLE_ffmpeg:BOOL=ON
-DPARAVIEW_DEFAULT_SYSTEM_GL:BOOL=OFF
-DENABLE_mpi:BOOL=ON
-DENABLE_silo:BOOL=ON
-DBUILD_SHARED_LIBS:BOOL=ON
-Dvtkm_SOURCE_SELECTION:STRING=for-git
-Dospray_SOURCE_SELECTION:STRING=for-git
-DENABLE_vtkm:BOOL=ON
-DENABLE_numpy:BOOL=ON
-DENABLE_paraviewusersguide:BOOL=OFF
-DENABLE_cosmotools:BOOL=OFF
-DCMAKE_BUILD_TYPE:STRING=Release
-DENABLE_glu:BOOL=ON
-DENABLE_tbb:BOOL=OFF
-DENABLE_boost:BOOL=ON
-DDIY_SKIP_SVN:BOOL=ON
-DUSE_NONFREE_COMPONENTS:BOOL=ON
-DENABLE_matplotlib:BOOL=ON
-DENABLE_las:BOOL=OFF
-DENABLE_scipy:BOOL=ON
-DENABLE_ospray:BOOL=ON
-DENABLE_fontconfig:BOOL=ON
-DUSE_SYSTEM_python:BOOL=OFF
-DENABLE_python:BOOL=ON
-Dparaview_SOURCE_SELECTION:STRING=git
…/paraview-superbuild

And here is the error:

CMake Error at /shared/opt/cmake-3.14.2-Linux-x86_64/share/cmake-3.14/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
Could NOT find Python3 (missing: Python3_EXECUTABLE Interpreter)
Call Stack (most recent call first):
/shared/opt/cmake-3.14.2-Linux-x86_64/share/cmake-3.14/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
/shared/opt/cmake-3.14.2-Linux-x86_64/share/cmake-3.14/Modules/FindPython/Support.cmake:1170 (find_package_handle_standard_args)
/shared/opt/cmake-3.14.2-Linux-x86_64/share/cmake-3.14/Modules/FindPython3.cmake:181 (include)
CMakeLists.txt:783 (find_package)

Why not trying with 5.6.0 ?

That’s just the binary I happen to have downloaded on my laptop a while ago. Why not RC2?

Because it is not a release. Please try with the latest release, 5.6.0.

The superbuild doesn’t support Python3 at the moment (building it or consuming it), sorry. It’s on the plan for the next spring release at the latest.

1 Like

Thanks @ben.boeckel and @mwestphal. So, when I try to build 5.6.0 now, I get this ospray error:

CMake Error at VTK/Rendering/RayTracing/CMakeLists.txt:52 (find_package):
Could not find a configuration file for package "ospray" that is compatible
with requested version "1.8".

The following configuration files were considered but not accepted:

/shared/opt/parabuild/install/lib/cmake/ospray-1.6.1/osprayConfig.cmake, version: 1.6.1

Shouldn’t superbuild be grabbing the right ospray version? Or is there a cmake flag I’m missing? I only used -DENABLE_ospray=ON and -Dospray_SOURCE_SELECTION:STRING=for-git .

Did you choose the 5.6.0 selection for ParaView? It’s best to use the v5.6.0-1 superbuild tag rather than master. For various reasons, master can drift and move ahead of what older ParaView sources expect.

Yeah, apparently. When I tried not using ospray, I instead got this error:

sed: can’t read /shared/opt/parabuild/install/lib/cmake/paraview-5.6/Modules/vtkCommonCore.cmake: No such file or directory
CMake Error at /shared/opt/paraview-superbuild/projects/scripts/paraview.fixupcmakepaths.cmake:39 (message):
Failed to patch
/shared/opt/parabuild/install/lib/cmake/paraview-5.6/Modules/vtkCommonCore.cmake

I’ll let you know if the tag you suggested does the trick. Thanks so much!

I’ll note that the readme mentions this: https://gitlab.kitware.com/paraview/paraview-superbuild/#building-a-specific-version. Is there someplace we should put it to be more prominent? Or maybe we should be more proactive in removing release selections once we’re pretty sure they’re not going to work for “common” cases?

Oh, I am at fault for not reading into that more. Unfortunately, I just skimmed and expected it to work. Thanks for pointing that out.