虽然6.3的vtk版本不会导致pcl在cmake过程中报错,但由于cmake/pcl_find_vtk.cmake中78和79行
set(VTK_RENDERING_BACKEND "OpenGL2")
set(VTK_RENDERING_BACKEND_OPENGL_VERSION "2")
导致pcl认为vtk中相关的模块基于OpenGL2而不是6.3版本实际上使用的OpenGL。其他程序如果依赖pcl,就可能因为找不到vtkRenderingOpenGL2;vtkRenderingContextOpenGL2报错。
解决方法有两种,升级vtk版本,或者把上面两行代码改成:
set(VTK_RENDERING_BACKEND "OpenGL")
set(VTK_RENDERING_BACKEND_OPENGL_VERSION "1")
由于实测升级vtk版本会影响ROS等软件的使用,建议采用后一种方法。