1 camke 下载 cmake-3.14.0-win64-x64
2 vtk 下载三个,分别是VTK-8.2.0.tar.gz ,VTKData-8.2.0.zip,VTKLargeData-8.2.0.zip ,建立三个文件夹VTK-8.2.0,VTK-8.2.0-build,VTK-8.2.0-install。然后把这三个文件都解压到VTK-8.2.0这个文件下。
3 打开cmake-gui.exe
我们开始配置,按照下图设置
接着我们对其他项进行设置
BUILD:
BUILD_SHARED_LIBS
BUILD_EXAMPLES 可不选
CMAKE:
CMAKE_INSTALL_PREFIX->VTK完成编译完成之后,就是上面创建的VTK-8.2.0-install
CMAKE_BUILD_TYPE 建议写release,不然又很多问题
CMAKE_CXX_FLAGE 写-Wa,-mbig-obj 避免遇到 file too big 这样的错误
Module
Module_vtkGUISupportQt
Module_vtkGUISupportQtOpenGL
Module_vtkGUISupportQtSQL
Module_vtkGUISupportQtWebkit
Module_vtkRenderingQt
Module_vtkViewsQt
这里按照你的qt编译起选择,目前qt5.15.2已经取消了qtwebkit了,这里我这选择了前三个,和后两个
VTK:
VTK_Group_Qt
VTK_DATA_STORE:为VTKData-8.2.0解压后的.ExternalData路径。
点击Configure,出现下面的图片
在点击Configure
直到没有红的为止
然后点击Generate
现在打开qt mingw
进入cd E:\VTK\VTK-8.2.0-build 路径下 输入
mingw32-make -j 6 这里的6是内核数,你可以查看你电脑看看最大是几核的。回车
问题1:
有的人会遇到undefined reference to `memset’
编译glew.c的时候。
修改建立的build目录下的 ThirdParty\glew\vtkglew\CMakeFiles\vtkglew.dir 目录,编辑 flags.make文件,增加
C_FLAGS = -mwin32 -mthreads -w -w -O3 -DNDEBUG -minline-all-stringops
问题2 :
aggregate 'QPainterPath path' has incomplete type ,打开E:\VTK\VTK-8.2.0\Rendering\Qt 把这里面的每个cxx文件里面都加入#include <QPainterPath>
然后输入 mingw32-make clean 回车,
然后在输入 mingw32- make -j 6 回车,编译无错,
在输入 mingw32-install 回车 ,编译完成