记录安装opencv的过程和碰到的问题以及解决方法

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2017/8/2

记录安装opencv的过程和碰到的问题以及解决方法。

在笔记本上安装vs2010,安装opencv,解压后,设置了“系统变量”,Path里包含了64位和86的bin链接D:/Program Files/opencv/build/x86/bin以及64位。创建项目,选择编译器的时候,直接新建x64了,然后新建属性表,新建了两个,名字为opencvx64.props和opencvx64release.props,发现系统没有自动识别属性表,此时的属性管理器是这样的。

由于疑惑,觉得自己建立的属性表是不是/不能用或者不能达到同步,于是寻找路径,从c:/user/username/appdata/MicroSoft/MSbuild/下找到了er这个属性表,导入到了项目中。修改的时候发现,debug和release的两个属性表是一样的的时候,更改链接库“外部依赖项”时,debug和release两个部分,没有办法区分开来。

说一下这里的设置,一个是“VC++目录”这边,这里边的页面“包含目录”下加入了D:/Program Files/opencv/build/以及D:/Program Files/opencv/build/opencv和D:/Program Files/opencv/build/opencv2这三个目录。然后在“库目录”下加入了D:/Program Files/Opencv/build/x64/lib这个目录。这样就是整个设置。

Debug和release两个属性表的设置实际上是一样的,因为链接库的外部依赖项没有办法区分,那就是一个东西。

然后就设置了整个项目的属性,右键点击最上面工程名那里设置。因为项目的属性继承了底下的属性,所以无需设置,但在“链接库”的“外部依赖项”这里加入了另外的debug (或者release)的lib列表。

以上,这样的设置,无论如何也没有办法通过编译。

尝试了完善win32的设置,除了在VC++目录这边是选用的x86目录,其余没有区别,也没有用。

尝试了改成win32编译,没有用。

尝试了使用一个网上的配置过程如下图,重新设置了环境变量,没有用。

尝试改变编译器的“库目录”改为x86的,发现提示与x64平台不符,看来这个属性是x64的没有错。没有用。

尝试同时在“库目录”里包含了x86和x64,发现会出现错误。没有用。

到这里,path的bin目录和“库目录”都选择的是x64,这一点是没有问题的。事实证明,x86只是适合于编译器选择为win32的时候才采用的。

最后,删除项目,重新新建一个新的项目,命名名字为“opencvsetup”,然后也是选择编译器为x64,发现还是要新建,否则下拉没有x64这个选项。重点是:在新建的时候,选择了从win32这里继承设置。这一步之前是没有的。

然后,这次选择新建属性表,发现win32的属性表是不需要设置的。Ok。然后发现即使是从win32那里继承了设置,那么Debug|x64和Release|x64下面还是只有两个东西:

这时选择了不导入,直接新建,重点是:这次新建的属性表名字有区别,名字是opencv.x64.debug,也就是加上了“.”作为连接符,这一点之前是没有的。

点击新建的时候,奇迹发生了,同样是新建属性表,这次自动生成了er 这个visualstudio自带的属性表,而且生成了Unicode Support选项,而我们新建的属性表变成了“opencv.x64”后面的“.debug”消失了!这是一个现象。

接着打开属性配置,发现都已经配置好了。好了,这样的话,我又建立了release,过程类似,但是我这次属性设置是右击“opencv.x64”这个文件的。也就是区别了Debug的选择了

er这个文件。然后看了一下还是没有办法区分“外部依赖项”。于是在工程的属性表中,“外部依赖项”加入了另外的lib列表。

这样,整个配置完成。

发现可以运行了。

以上。

相关文档
最新文档