恢复软件环境时遇到的关于opencv的几个错误
2016-04-13 23:07
369 查看
问题背景
最近导师给了一个软件让我恢复,是前几任师兄写的,但是由于之前写软件的机器系统坏了,不得已重装系统,所以之前的环境都没了,恢复环境也是一波三折,之前没搞过这么大的工程,现在基本算是搞定了中间碰到的问题主要有这几个:1. opencv 2.4.4与opencv 2.3.1并存时出的错:
由于之前自己配置过VS2010+opencv 2.4.4,配置方法是新建工程,然后打开属性管理器进行配置,这样做的好处是配置一次,以后其他工程就可以继续使用了。 这次给我的程序用的是opencv 2.3.1,为了先恢复出来,所以按照原程序的版本来,又进行了VS2010+opencv 2.3.1的配置,这种情况下,一直出很奇怪的错,后来发现,在生成的时候,会链接opencv 2.4.4而不是opencv 2.3.1 后来把opencv 2.4.4的相关库和包含目录删掉之后去掉了一部分错误。
2. 出现了奇怪的错误,错误提示忘了。最终是这样解决的:在C/C++ -> General -> Additional Include Directories(C/C++–>常规—>附加包含目录)里添加包含文件。这两者都是包含目录,有什么区别呢,搜到这篇文章VS中C++的包含目录、附加包含目录和库目录和附加库目录的区别 我觉得说的还算清楚。见下面图1和图2
我们一般使用C/C++和Linker下面的设置,而一般不建议使用VC++下面的设置。
3. 在链接器–>输入–>附加依赖项release版本的lib文件和debug版本下的lib文件导致的问题:
可以从图3中看到看到,此时带d的lib和不带d的lib同时存在。
运行程序时会出现下面的错误:
Windows 已在 Vessel.exe 中触发一个断点。
其原因可能是堆被损坏,这说明 Vessel.exe 中或它所加载的任何 DLL 中有 Bug。
原因也可能是用户在 Vessel.exe 具有焦点时按下了 F12。
输出窗口可能提供了更多诊断信息。
找了很长时间最终的解决办法是去掉不带d的lib,release版本和debug版本要分开配置
设置完毕后要重新生成一次
相关文章推荐
- 所有W版本的函数都在wchar.h文件(_wfopen),和stdlib.h文件(wcstombs),和stdio.h文件(vwprintf)
- 相比较Windows,Linux系统的优点体现在哪里?
- Handler、Looper,Message传递机制(方法)
- 【转载】tomcat结合nginx使用小结
- OpenSSL
- Hadoop集群搭建
- tomcat 能在控制台成功启动,程序确定无错误,但运行结果是404错误。
- Hadoop学习之FileSystem
- Linux驱动开发之ubuntu下的驱动编译
- 《Linux内核设计与实现》学习总结 Chap4
- 【杭电】[4349]Xiao Ming's Hope
- linux非root用户使用秘钥登陆实现方法
- apache lucene solr 官网历史版本下载地址
- Linux多线程与同步
- linux scons 实用说明(一)-g选项
- linux线程
- Linux 学习记录
- Centos 7 DNS配置及理论详解
- iOS各框架使用场景以及系统架构层次
- hadoop的shuffle