ARTICLE AD BOX
I have recently tried installing VTK 9.5 on Ubuntu 24.04 from source (latest .tar.gz release) but when I compile a really simple example code the window doesn't show up. I would like my vtk installation to use my Nvidia RTX 3060Ti GPU.
int main() { vtkSmartPointer<vtkConeSource> cone = vtkSmartPointer<vtkConeSource>::New(); vtkSmartPointer<vtkPolyDataMapper> mapper = vtkSmartPointer<vtkPolyDataMapper>::New(); mapper->SetInputConnection(cone->GetOutputPort()); vtkSmartPointer<vtkActor> actor = vtkSmartPointer<vtkActor>::New(); actor->SetMapper(mapper); vtkSmartPointer<vtkRenderer> renderer = vtkSmartPointer<vtkRenderer>::New(); renderer->AddActor(actor); renderer->SetBackground(0.1, 0.2, 0.4); vtkSmartPointer<vtkRenderWindow> renderWindow = vtkSmartPointer<vtkRenderWindow>::New(); renderWindow->AddRenderer(renderer); renderWindow->SetSize(800, 600); renderWindow->Render(); return 0; }Which I compile with :
g++ test.cpp -o test -I/usr/local/include/vtk-9.5 -L/usr/local/lib -lvtkCommonCore-9.5 -lvtkCommonDataModel-9.5 -lvtkCommonExecutionModel-9.5 -lvtkFiltersSources-9.5 -lvtkRenderingCore-9.5 -lvtkRenderingOpenGL2-9.5 -lvtkRenderingFreeType-9.5 -lvtkRenderingUI-9.5 -lvtkInteractionStyle-9.5 -lvtkImagingCore-9.5 -lvtkIOImage-9.5 -lvtkjpeg-9.5 -lvtksys-9.5
I get no error, just nothing. Printing statements work if I add them though. I am also not experienced with building from source so this is what I did. I followed carefully the build.md of kitware (https://gitlab.kitware.com/vtk/vtk/-/blob/master/Documentation/docs/build_instructions/build.md).
For choosing the compile flag options I used the ninja "gui" generator making sure I allow OpenGL and basically leaving the default options, here is a bref summary of what seems important from the resulting CMakeCache.txt :
BUILD_SHARED_LIBS:BOOL=ON VTK_DEFAULT_RENDER_WINDOW_OFFSCREEN:BOOL=OFF VTK_DEFAULT_RENDER_WINDOW_HEADLESS:BOOL=OFF VTK_GROUP_ENABLE_Imaging:STRING=YES VTK_GROUP_ENABLE_Qt:STRING=NO VTK_GROUP_ENABLE_Rendering:STRING=YES VTK_GROUP_ENABLE_STANDALONE:STRING=YES VTK_GROUP_ENABLE_StandAlone:STRING=YES VTK_GROUP_ENABLE_Views:STRING=YES VTK_INSTALL_SDK:BOOL=ON VTK_OPENGL_HAS_EGL:BOOL=OFF # didn't remember this one was off i'll retry with ON VTK_OPENGL_USE_GLES:BOOL=OFF # i think it's for mobile dev VTK_USE_CUDA:BOOL=OFF # I just want to use the GPU for rendering, nothing more VTK_USE_X:BOOL=ON # i do have x11 and $DISPLAY -> :1 X11_X11_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libX11.so # some similar entries with 'PATH NOT FOUND' but no compile error so I guess it's okAfter : cmake --build ~/vtk/build
I do : sudo ninja install
Additional notes that might be useful :
running xeyes in the shell works.
I am not on Wayland (tried Ubuntu and GNOME desktop)
I tried some fiddling with Xauthority files
Thank you for your help !
