vs2015下搭建opencv2.4.x

来源:互联网 发布:xampp php版本切换 编辑:程序博客网 时间:2024/06/04 23:35

vs2015安装opencv2.4.x,因为2.4.x最高支持到vc12的库文件,vs2015是使用的vc14,所以,必须加载vc12的两个dll(msvcp120d.dll和msvcp120.dll)方可识别opencv的dll库文件。 不然就会报奇怪的错误,有时候F5调试竟然是如下错误:


而且死活调试运行不过。

后台把msvcp120d.dll和msvcp120.dll这两个文件放到环境变量下,就是vc12的bin下面,终于调试通过了。

感觉好坑,浪费了一下午发现这个问题,至于以下方法,其实并不解决问题以上的报错问题。




附录:vs2015安装opencv的通用办法:


1.下载并运行opencv2.4.11。指定路径提取出opencv文件

        2.设置环境变量

【(右键)计算机】->【属性】->【高级系统设置】->【高级(标签)】->【环境变量】->“双击”系统变量中的PATH->在变量值里面添加相应的路径。如图:

我设置的环境变量是D:\opencv\opencv\build\x86\vc12\bin

根据实际情况,build文件夹后两级的路径选取是不同的。

对于是x86还是x64?

如果你最终选择的是64位编译,那么路径选择x64,

例如:D:\opencv\opencv\build\x64\vc12\bin

如果你最终选择的是32位编译,那么路径选择x86。

这里需要注意的是,使用多少位编译指的是VS中的这里

而不是你的电脑操作系统是64位还是32位。

后面再选择x86还是x64时,也是同样的道理!!!

对于是vc10?vc11?vc12?

这里给出一个对应

vs2010=vc10

vs2012=vc11

vs2013=vc12

vs2015目前也选择vc12,后续可能opencv会更新

配置完环境变量后,建议注销电脑。Win10电脑按alt+F4

3.包含目录的配置

首先新建或者随便打开想要使用opencv的项目

点击【视图】->打开【属性管理器】

如果没有属性管理器,在【其他窗口】中查找

根据自己选择的编译方法,例如我选择Debug和x86,在【属性管理器】中点击对应的属性页,如下图:

在包含目录中添加:

D:\opencv\opencv\build\include\opencv2

D:\opencv\opencv\build\include\opencv

D:\opencv\opencv\build\include

这种方法配置的是通用属性,一次配置,一直使用

4.库目录的配置

在包含目录的下方,编辑库目录,添加:

D:\opencv\opencv\build\x86\vc12\lib

x86和vc12的选择原因同2

5.链接库的配置

对于链接库的配置,有的博客建议不要配置成通用属性,而是每个项目配一次,虽然有些麻烦,但是能避免opencv报出奇奇怪怪不好处理的错误。这里就给出每次使用单独配置的方法:

右键选择当前项目->属性

会出现与先前通用属性页一样的属性页,只不过你做的操作只针对当前项目。

进行如下图操作添加附加依赖项:

注意到,我们添加的附加依赖项文件名都是d结尾的,带d的lib文件对应Debug,不带d的文件对应Release。

所以,对于选择Debug编译时,添加:

opencv_ml2411d.lib
opencv_calib3d2411d.lib
opencv_contrib2411d.lib
opencv_core2411d.lib
opencv_features2d2411d.lib
opencv_flann2411d.lib
opencv_gpu2411d.lib
opencv_highgui2411d.lib
opencv_imgproc2411d.lib
opencv_legacy2411d.lib
opencv_objdetect2411d.lib
opencv_ts2411d.lib
opencv_video2411d.lib
opencv_nonfree2411d.lib
opencv_ocl2411d.lib
opencv_photo2411d.lib
opencv_stitching2411d.lib
opencv_superres2411d.lib
opencv_videostab2411d.lib

对于选择Release编译时,添加:

opencv_objdetect2411.lib
opencv_ts2411.lib
opencv_video2411.lib
opencv_nonfree2411.lib
opencv_ocl2411.lib
opencv_photo2411.lib
opencv_stitching2411.lib
opencv_superres2411.lib
opencv_videostab2411.lib
opencv_calib3d2411.lib
opencv_contrib2411.lib
opencv_core2411.lib
opencv_features2d2411.lib
opencv_flann2411.lib
opencv_gpu2411.lib
opencv_highgui2411.lib
opencv_imgproc2411.lib
opencv_legacy2411.lib
opencv_ml2411.lib

6.VS2015带来的问题

使用VS2015会导致编译运行时报错:“缺少msvcp120d.dll”

解决方法是需要下载两个dll,

在一个博客里找到的地址http://pan.baidu.com/s/1hqF8nlU
解压后将两个dll拷到你配置环境变量的地址对应的那个文件夹
例如我的是:D:\opencv\opencv\build\x86\vc12\bin
如果不是这个错误,说明配置的错误和使用vs2015无关,亲测~

到此如果你配置无误,opencv应该已经配置成功了

0 0
原创粉丝点击