dutren的个人博客分享 http://blog.sciencenet.cn/u/dutren

博文

VTK5.10.0+VS2010+Cmake2.8.8安装总结

已有 9673 次阅读 2012-5-20 18:29 |系统分类:科研笔记| 安装

写在开始:
以前总是不愿改变,想VC6.0永远使下去,可是非常喜欢WIN7,忍痛割爱,曾试过安装虚拟机XPmode,运行VC6,但你不知道的是绘图程序那是怎么个效果啊...于是奔向VS2010,开始了VC2010之旅。

VTK业界公认很好的开源开发工具包,现在已更新至5.10.0版本,于是就有了标题的组合,总结一下安装的小结。

主要参考了《Visual Studio 2005环境下安装VTK教程》以及VTK安装三部曲。

按照教程一步一步来即可。
注意1:版本都用同一时期的肯定没有问题。

当配置完毕,开始编译的时候开始报错。
错误一:

fatal error C1189: #error : This file requires _WIN32_WINNT to be #defined at least to 0x0403

原因:

版本迁移设置的系统最低版本过低

Visual C++ 2010 no longer supports targeting Windows 95, Windows 98, Windows ME, or Windows NT. If your WINVER or _WIN32_WINNT macros are assigned to one of these versions of Windows, you must modify the macros. When you upgrade a project that was created by using an earlier version of Visual C++, you may see compilation errors related to the WINVER or _WIN32_WINNT macros if they are assigned to a version of Windows that is no longer supported(From MSDN)

直接原因-在atlcore.h中有如下三行代码:

#if _WIN32_WINNT < 0x0403

#error This file requires _WIN32_WINNT to be #defined at least to 0x0403. Value 0x0501 or higher is recommended.

#endif

解决方法:

在VTK目录中所有的stdafx.h文件中参照 http://msdn.microsoft.com/en-us/library/aa383745.aspx 修改WINVER,_WIN32_WINNT,_WIN32_WINDOWS和_WIN32_IE的定义,例如:#define WINVER 0x0501


注意2:以上解决办法中注意一个词:所有!!!慢慢改,找到地方全改成0x0601 IE那如果是IE8改为0x0800

错误2

LINK : warning LNK4199: 已忽略 /DELAYLOAD:vtkIO.dll;未找到来自 vtkIO.dll 的导入

解决办法:在这几个链接错误的工程上,右键属性,在link——Input——Additional dependencies里,加上vtkIO.ilb,就OK了。记得添加路径要正确

注意3:出现几个链接错误的工程,就都如上改就可以了。证实确实解决了问题。

我解决了以上两个问题,即编译通过。


感谢所有网上分享者!正是如此,才能推动科学的进步,也正是如此,我才写了这篇博文,希望能帮助更多的人!







https://blog.sciencenet.cn/blog-347289-573096.html

上一篇:朋友QQ 被盗,骗子要求汇钱,为其他人提供线索
下一篇:处女面小结
收藏 IP: 202.118.77.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (1 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-18 02:49

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部