本文介绍用CMake和VS2013来编译安装VTK。
1、准备工作
- 安装VS2013
- 下载CMake3.8.0(www.cmake.com)
-
下载VTK相关包(www.vtk.org)
- vtk-7.1.0.zip (源码包,包含了VTK所有的核心源代码以及相关的示例程序。)
- vtkdata-7.1.0.zip(数据包,包含了VTK自带的示例或测试程序运行时需要用到的数据。)
2、建立文件夹
建立根文件夹,命名为VTK7.1(注意:文件名中不要含有中文字符)。解压 vtk-7.1.0.zip和vtkdata-7.1.0.zip到根文件下面。在根文件下,新建文件夹vtk7.1.0bin和vtk7.1.0out,vtk7.1.0bin用来vtk编译过程生成的文件。此时根文件夹里如下所示:
3、运用CMake生成二进制文件
如下图所示,设置目录,然后点击Configure按钮。在弹出框中选择VS2013作为编译器,CMake自动扫描需要的文件。
停下后,显示红色列表,接着开始修改cmake选项,手动勾上 build_shared_libs、build_examples,
将CMAKE_INSTALL_PREFIX选项修改为E:/vtk7.1/VTK7.1.0out。然后勾选cmake界面上方的Advanced,进入下一级,这时到下面VTK_Group_Qt 这一项勾选,然后 configure。如出现红色则修改对应选项,再一直configure,直到红色消失。
最后点击Generate按钮,产生相应的KTV.sln 解决方案。
部分CMake配置选项的说明:
●
BUILD_EXAMPLE
——默认是关闭的,若选中这个选项,则会编译VTK示例,同时VTK编译所 需的时间也较长,占用的磁盘空间也较 大。对于初学者来说,建议选中此项。
●
BUILD_SHARED_LIBS
——默认是关闭的,意味着VTK是静态编译,只生成lib文件;若选中此项,则动态编译,将会多生成dll文件。
●
BUILD_TESTING
——默认是打开的,表示会编译VTK的测试程序。VTK里每个类都会有对应的程序文件对该类进行测试,为了节省编译时 间,可以先关闭这个选项,后续如有需要,再打开此选项重新编译。
●
VTK_DATA_ROOT
——指向VTKData所在的路径,即vtkdata-7.1.0.zip解压后的路径。一般情况下,CMake能自动搜索到,如果没搜索到,可以手动输入,在运行VTK的示例 时需要用到这些数据。
●
CMAKE_INSTALL_PREFIX
——这个选项的值表示VTK的安装路径。该选项的值可不作修改,按默认值即可。在配置完VTK后生成的工程中 会有一个INSTALL项目,编译该项目后即会在CMAKE_INSTALL_PREFIX所指定的路径中生成VTK相应的头 文件、lib文件和动态链接库dll文件。
●
BUILD_DOCUMENTATION
——默认是关闭的。若选中此选项,则会编译VTK帮助文档。由于这个文档VTK已提供下载,因此可以不选。
●
VTK_Group_QT
——是否使用Qt。
4、运行VS2013编译
直接点击CMake的“Open Project”按钮打开VTK.sln,如下图,或者在vtk7.1.0bin目录下打开VTK.sln。
1) 右击项目”ALL_BUILD”,选择”重新生成”,等待;选择任一项目,右击选择”设为启动项目”,然后就可以进行”调试”或者”开始执行”了
2) 选择任一项目,右击选择”设为启动项目”,然后就可以进行”调试”或者”开始执行”了(注意,因为没有生成,所以每一项目先自动进行生成)
如果还想把VTK相关的头文件、动态链接库文件等提取处理,以便于其他项目的开发,
可以编译Solution下的“INSTALL”工程,右击该工程,在弹出的快捷菜单中选择Project Only->Build Only INSTALL选项,如下图所示。VTK里的所有头文件以及相关的库文件等,都会被提取到CMAKE_INSTALL_PREFIX选项所指定的目录里。默认路径为C:/Program Files/VTK。
我们指定的目录是E:/vtk7.1/VTK7.1.0out,此时该目录如下所示。