依赖vtk的工程项目
问题:编译可以成功,但是运行出现no override found for "vtkRenderingOpenGL"
出现原因:CMakeLists.txt中缺少相应的库模块,可以通过文档查阅确定库名,在CMakeLists.txt中添加:find_package(VTK_COMPONENTS vtkRenderingOpengle)
在.cpp中vtk相关头文件前加
#include <vtkAutoInit.h>
VTK_MODULE_INIT(vtkRenderingOpenGL);
如果光在.cpp中添加,不再CmakeLists.txt中添加,则出现问题:
CMakeFiles/MarchingCubes.dir/MarchingCubes.cxx.o: In function `vtkRenderingOpenGL_ModuleInit::vtkRenderingOpenGL_ModuleInit()':
MarchingCubes.cxx:(.text._ZN29vtkRenderingOpenGL_ModuleInitC2Ev[_ZN29vtkRenderingOpenGL_ModuleInitC5Ev]+0xd): undefined reference to `vtkRenderingOpenGL_AutoInit_Construct()'
CMakeFiles/MarchingCubes.dir/MarchingCubes.cxx.o: In function `vtkRenderingOpenGL_ModuleInit::~vtkRenderingOpenGL_ModuleInit()':
MarchingCubes.cxx:(.text._ZN29vtkRenderingOpenGL_ModuleInitD2Ev[_ZN29vtkRenderingOpenGL_ModuleInitD5Ev]+0xd): undefined reference to `vtkRenderingOpenGL_AutoInit_Destruct()'