VTK_1 VS2010下的VTK安装和基础验证示例

近期打算学习如何在VS2010环境下,通过调用VTK库的方式来对点云进行重建,因此需要学习VTK库的使用。VS2010是之前电脑上已经安装好的软件,因此这里不再赘述。首先是VTK库安装所需的一些准备工作。

- 准备安装包:

cmake_3.12.4-win64-x64.zip
(cmake下载地址 需要根据电脑系统等选择,我是windows系统)
VTK-6.3.0.zip以及VTKData-6.3.0.zip
(VTK下载地址 网上的教程要么是最新的版本,要么是很早的版本,我试了一下,6.3.0版本是可以在VS2010下顺利安装成功的)

  • 解压安装

1 将VTK-6.3.0.zip解压至C:/MyProjects/VTK-src路径下(我没找到网上说的vtk-win32.exe,所以直接用了zip文件,而该路径是我在C盘新建的,这个随意)
2 将VTKData-6.3.0.zip解压至C:/MyProjects/VTK-data路径
3 这里我把cmake_3.12.4-win64-x64.zip解压到了C:/MyProjects下,不知道解压到其他地方会不会有影响。
4 对于解压后的cmake,其中的bin文件夹下有一个cmake-gui.exe的可执行文件,运行它,然后在下面做详细介绍。
参考文章VTK(一)vtk5.8 +vs2010. 安装总结

  • cmake操作

1 运行cmake-gui.exe会出现一个界面,需要设置“where is the source code”和“where to build the binaries”两个目录,其中第一个是vtk源码所在的路径,我这里写为“C:/MyProjects/VTK-src”,而第二个目录则需要
设置为cmake源码将要被编译到的路径,这里我写为“C:/MyProjects/VTK-bin”。
但是这个时候configure就出问题了,底下的文字栏显示了报错:“Error in configuration process,project files may be invalid”,以及出现一堆红色的“xxx not found”。最后想到在VTK源码所在路径下并不是把VTK-6.3.0内容直接解压进去,而是还有个VTK-6.3.0文件夹,里面才是内容,是不是跟这个有关呢?
因此我对VTK-6.3.0文件夹建了一个备份VTK-6.3.0-copy文件夹,将其作为VTK源码路径“C:/MyProjects/VTK-src/VTK-6.3.0-copy”,configure试了一下,进度条走完果然跟其他经验帖出现了一样的结果。就是下图这种,一堆红色。
ps:第一次configure时会出现一个选择工程的编译器的对话框,选择vs2010,并勾选Use default native compilers选项并finish。
cmake-gui.exe路径设置和结果
2 勾选红色上方的Advanced选项,除了默认勾选之外,需要勾选的是
BUILD_SHARED_LIBS
CMAKE_INSTALL_PREFIX目录则改为“C:/MyProjects”,也就意味着之后生成的文件夹会出现在这个路径之下,应该可以再新建个文件夹放进去,会更清晰整齐一些。
由于我的VTK版本较高,是5.0以上,因此不用勾选vtk_use-guisupport,只勾选module_guisupport_mfc
未勾选的是
BUILD TESTING
BUILD EXAMPLES
因为勾选上需要加载很久,但是吧,我还是建议勾选上,因为我是新手,它这里面都是例子,我现在都有点后悔没选了,还要费劲巴拉的找实例验证VTK是不是安装成功了。
3 勾选完之后,我们再configure一次,直到红色都变成灰色,就可以点击generate啦!这时候就会发现“C:/MyProjects/VTK-bin”下生成VTK.sln等文件了。
参考文章vs2010+cmake3.2.1+VTK搭建(内附四种VTK版本)

  • 编译VTK.sln

用vs2010打开VTK.sln文件,对其中的ALLBuild工程右键,选择生成。生成成功之后同样生成INSTALL了,结束之后就可以在之前cmake选定的Install文件夹中看到相关的内容了。这个时候就体现出新建一个文件夹的重要性了,我的都铺在大文件夹里有点乱。

  • 配置路径

选择项目>属性,选择VC++目录,修改包含目录路径为上图文件夹(install文件夹)下的include,即“C:/MyProjects/include”。库目录也改为“C:/MyProjects/lib”
最重要的是!配置环境变量!
我之前没注意,之后的小实例老是报错,查了好久
右键计算机->属性->高级系统设置->环境变量,在系统变量栏目里找到path一栏,将install文件夹下的bin路径拷贝到变量值里面点击确定即可。变量间隔要用;隔开,我这里因着后面的报错把所有含“xxx.dll”文件的路径都包含进去了“C:/MyProjects/bin”和“C:/MyProjects/VTK-bin/bin/Debug”,然后确定,重启电脑和VS。
参考文章vs2010+vtk源码编译,工程配置
- 小例子
具体我不说了,参考的一个大神的,链接放下面了,说一下遇到的几个问题
02-VTK编译安装
问题1

对例子中ALL_BUILD进行组建时,找不到BUILD菜单的Set Active Configuration

解决:
打开工程,选定相应工程(如ALL_BUILD),在菜单栏上选择:生成->配置管理器->活动解决方案,配置可选组建方式有Debug,Release,MinSizeRel和RelWithDeInfo
问题2

实例2.3.2-TestVTKInstall中报错

解决
CMakeLists.txt中有的空格没有体现,对此评论中有人做了指正

cmakelists.txt中, (VERSION2.8)中,2前边有空格 
find_package(VTKREQUIRED)中,VTK后边有空格 
add_executable(${PROJECT_NAME}TestVTKInstall.cpp)中间有空格 
target_link_libraries(${PROJECT_NAME}vtkRendering vtkCommon)空格 
TestVTKInstall.cpp中,intmain中间有空格。

问题3

sln工程编译报错,无法找到vtkRendering.lib

解决:
修改cmakelists.txt最后一行改为target_link_libraries(${PROJECT_NAME} ${VTK_LIBRARIES})

问题4

项目属性中找不到链接器选项

解决:
在该项目中,工程为包含TestVTKInstall.cpp的TestVTKInstall,需要选定该工程查看属性

问题5

编译通过,F5运行报错——无法启动程序ALL_BUILD

*解决:*将所要运行的项目(TestVTKInstall)右键设置为启动项

问题6

提示报错——计算机缺失“xxx.dll”文件

解决:
环境变量啊!上面提过的!

实例cmake路径如下
路径
最后结果上图:
运行界面

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值