vtkSetGet.h not found
srizzi88 opened this issue · comments
I attempted a minimal build of v4.0 with Python and VTK_IO enabled. Python dependencies are provided by miniconda. At the time of building SENSEI core the build stops with an error saying that it can't find vtkSetGet.h
SENSEI 4.0 from master, commit e0ae9a9
Cmake settings:
-DCMAKE_INSTALL_PREFIX=./install/sensei \
-DMPI_C_COMPILER=/soft/libraries/mpi/mvapich2-2.2/gcc-8.2.0/bin/mpicc \
-DENABLE_PYTHON=ON \
-DSENSEI_PYTHON_VERSION=3 \
-DSVTK_PYTHON_VERSION=3 \
-DENABLE_CATALYST_PYTHON=OFF \
-DENABLE_CATALYST=OFF \
-DENABLE_VTK_IO=ON \
-DENABLE_MANDELBROT=OFF \
-DENABLE_OSCILLATORS=ON \
-DENABLE_ADIOS2=OFF \
-DENABLE_VTKM=OFF
Errors:
In file included from /lus/grand/projects/visualization/srizzi/SENSEI4.0/SENSEI/sensei/DataAdaptor.cxx:3:
/lus/grand/projects/visualization/srizzi/SENSEI4.0/SENSEI/sensei/SVTKUtils.h:76:10: fatal error: vtkSetGet.h: No such file or directory
In file included from /lus/grand/projects/visualization/srizzi/SENSEI4.0/SENSEI/sensei/DataRequirements.cxx:4:
/lus/grand/projects/visualization/srizzi/SENSEI4.0/SENSEI/sensei/SVTKUtils.h:76:10: fatal error: vtkSetGet.h: No such file or directory
In file included from /lus/grand/projects/visualization/srizzi/SENSEI4.0/SENSEI/sensei/Autocorrelation.cxx:6:
/lus/grand/projects/visualization/srizzi/SENSEI4.0/SENSEI/sensei/SVTKUtils.h:76:10: fatal error: vtkSetGet.h: No such file or directory
What version of VTK are you building against?
SENSEI 4.0 so sVTK.
So when VTK_IO is enabled it looks for a VTK install and builds SVTKUtils.h
which is the transcribing layer between SVTK and VTK 9.
Ryan is correct, SVTK is the data model only, and you need a stand alone VTK install to use VTK's IO or FILTERS.
CMake is not complaining about not finding VTK, which means that CMake is finding a VTK install somewhere in your default system paths or possibly in your Anaconda which takes a "kitchen sink" approach and installs everything. Note: We currently do not support Anaconda. Using Anaconda may require extra effort on your part.
To see what VTK CMake is finding, one can put CMake in find package DEBUG mode with -DCMAKE_FIND_DEBUG_MODE=TRUE
and grep for vtk in the stderr output. For example :
$ cmake -DCMAKE_FIND_DEBUG_MODE=TRUE \
-DBUILD_TESTING=ON -DCMAKE_BUILD_TYPE=Debug \
-DENABLE_VTK_FILTERS=ON -DENABLE_VTK_IO=ON \
-DCMAKE_INSTALL_PREFIX=/work/SENSEI/sensei-svtk-install-py3k/ \
../sensei-svtk 2>&1 | grep '\<[vV][tT][kK]'
You may need to tell CMake where to find VTK using the -DVTK_DIR
command line option. As always with CMake , rm -rfI ./*
the build in between failed attempts.