MattClarkson / CMakeCatchTemplate

Template C++ project using CMake, CTest, Catch, and a SuperBuild for dependencies such as Boost, gflags, glog, VTK, OpenCV and PCL.
BSD 3-Clause "New" or "Revised" License
30 stars 13 forks source link

Use VTKs OpenGL2 backend - use VTK 8.0.1 or 6.1.0 on Mac. #16

Closed MattClarkson closed 6 years ago

MattClarkson commented 6 years ago

I want to test this out specifically for Mac.

  1. According to https://blog.kitware.com/new-opengl-rendering-in-vtk/, this was merged on June 20, 2014, so we would need at least VTK version 6.3. In VTK 6.3, both OpenGL and OpenGL2 backends should be present.
  2. At UCL, Im currently using Qt 5.4.2 for MITK based projects, using a fork of MITK 2015.5.2. But Qt changed their OpenGL significantly in 5.5, and MITK/master now has a minimum Qt 5.6. So, the target is Qt 5.6 or newer.
  3. When I first compiled this project with Qt 5.6, I got issues on Mac, similar to: https://github.com/opencv/opencv/issues/7606, and further googling suggests we may need to specify a minimum Mac SDK or xtools version.
  4. Then, Im also aware that on a Mac, there was this issue https://github.com/PointCloudLibrary/pcl/issues/712 when I was integrating PCL, whereby VTK 7.1 would not build, so I dropped back to 6.1. So the first question is whether VTK 6.3 will compile at all, regardless of the backend. This commit https://github.com/Kitware/VTK/commit/a3e9fc90d95d2379618d6e6f0e630377dbe034ad suggests it should not. But then maybe a newer version of PCL will work?
MattClarkson commented 6 years ago

Tested on Windows, Linux and Mac, but with OpenCV off. If OpenCV doesn't compile with a specific version, then that should be a separate ticket. This is about VTK / Qt and PCL versions.