[build] Compiling VTK glew does not respect variables for X11 headers
I am trying to build ParaView on a RHEL cluster which has a bespoke X11 installation. Part of X packages is installed through the repos and part is done through manual compilation. I am using the following to configure my ParaView installation
cmake \
-DBUILD_DOCUMENTATION:BOOL=OFF \
-DBUILD_TESTING:BOOL=OFF \
-DCMAKE_BUILD_TYPE:STRING=Release \
-DCMAKE_C_FLAGS:STRING=-std=c++11 \
-DCMAKE_CXX_FLAGS:STRING=-std=c++11 \
-DCMAKE_INSTALL_PREFIX:PATH=$install_path \
-DPARAVIEW_ENABLE_PYTHON:BOOL=ON \
-DVTK_PYTHON_VERSION:STRING=2 \
-DPARAVIEW_USE_MPI:BOOL=ON \
-DPARAVIEW_QT_VERSION:STRING=4 \
-DOPENGL_INCLUDE_DIR:PATH=/usr/include/nvidia \
-DOPENGL_gl_LIBRARY:FILEPATH=/usr/lib64/nvidia/libGL.so \
-DOPENGL_glu_LIBRARY:FILEPATH=/gpfs/panther/local/apps/viz/utilities/lib/libGLU.so \
-DPARAVIEW_USE_ICE_T:BOOL=OFF \
-DX11_ICE_INCLUDE_PATH:PATH=/gpfs/panther/local/apps/viz/utilities/include \
-DX11_ICE_LIB:FILEPATH=/gpfs/panther/local/apps/viz/utilities/lib/libICE.so \
-DX11_SM_INCLUDE_PATH:PATH=/gpfs/panther/local/apps/viz/utilities/include \
-DX11_SM_LIB:FILEPATH=/gpfs/panther/local/apps/viz/utilities/lib/libSM.so \
-DX11_X11_INCLUDE_PATH:PATH=/gpfs/panther/local/apps/viz/utilities/include \
-DX11_X11_LIB:FILEPATH=/gpfs/panther/local/apps/viz/utilities/lib/libX11.so \
-DX11_XRes_INCLUDE_PATH:PATH=/gpfs/panther/local/apps/viz/utilities/include \
-DX11_XRes_INCLUDE_PATH:PATH=/gpfs/panther/local/apps/viz/utilities/include \
-DX11_XRes_LIB:FILEPATH=/gpfs/panther/local/apps/viz/utilities/lib/libXRes.so \
-DX11_Xt_INCLUDE_PATH:PATH=/gpfs/panther/local/apps/viz/utilities/include \
-DX11_Xlib_INCLUDE_PATH:PATH=/gpfs/panther/local/apps/viz/utilities/include \
-DX11_Xt_LIB:FILEPATH=/gpfs/panther/local/apps/viz/utilities/lib/libXt.so \
-DPARAVIEW_ENABLE_MATPLOTLIB:BOOL=OFF \
-DVTK_RENDERING_BACKEND:STRING=OpenGL2 \
../$version
The config stage is successful but the build gets tripped up by:
[ 14%] Building C object VTK/ThirdParty/glew/vtkglew/CMakeFiles/vtkglew.dir/src/glew.c.o
cd /gpfs/cds/local/package_build/build/rrs59-build/build/paraview/build-gcc-ompi/VTK/ThirdParty/glew/vtkglew && /usr/bin/cc -DMPICH_IGNORE_CXX_SEEK -DVTK_IN_VTK -Dvtkglew_EXPORTS -DGLEW_NO_GLU -I/gpfs/cds/local/package_build/build/rrs59-build/build/paraview/build-gcc-ompi -I/gpfs/cds/local/package_build/build/rrs59-build/build/paraview/build-gcc-ompi/VTK/ThirdParty/glew -I/gpfs/cds/local/package_build/build/rrs59-build/build/paraview/5.4.1/VTK/ThirdParty/glew -isystem /usr/include/nvidia -I/gpfs/cds/local/package_build/build/rrs59-build/build/paraview/5.4.1/VTK/ThirdParty/glew/vtkglew -I/gpfs/cds/local/package_build/build/rrs59-build/build/paraview/5.4.1/VTK/ThirdParty/glew/vtkglew/include -std=c++11 -w -w -O3 -DNDEBUG -fPIC -o CMakeFiles/vtkglew.dir/src/glew.c.o -c /gpfs/cds/local/package_build/build/rrs59-build/build/paraview/5.4.1/VTK/ThirdParty/glew/vtkglew/src/glew.c
In file included from /gpfs/cds/local/package_build/build/rrs59-build/build/paraview/5.4.1/VTK/ThirdParty/glew/vtkglew/src/glew.c:40:0:
/gpfs/cds/local/package_build/build/rrs59-build/build/paraview/5.4.1/VTK/ThirdParty/glew/vtkglew/include/GL/glxew.h:98:22: fatal error: X11/Xlib.h: No such file or directory
#include <X11/Xlib.h>
^
compilation terminated.
It looks to me that vtkglew is assuming standard X11 location. Is that possible? Can we make it respect the X11*
variables. Please advise.