终于弄清楚了opencv的配置原理了

2 篇文章 0 订阅
1 篇文章 0 订阅

配置步骤

设置环境变量

即设置【(双击)计算机】->【系统属性】->【高级系统设置】->【高级(标签)】->【环境变量】->path
…… opencv\build\x86\vc10\bin
…….opencv\build\x64\vc10\bin

原理:设置opencv的动态链接库.dll文件所在的目录,用于运行时动态载入。

设置包含目录

即【通用属性】 ->【VC++目录】 ->【包含目录】
D:\Program Files\opencv\build\include\opencv2
D:\Program Files\opencv\build\include\opencv
D:\Program Files\opencv\build\include

设置库目录

即【通用属性】 ->【VC++目录】 ->【库目录】
D:\Program Files\opencv\build\x86\vc10\lib

原理:设置opencv的动态链接库的引入库文件(.lib),用于编译时链接,包含了dll索引信息,记录了dll中函数的入口和位置,而dll中是函数的具体内容(path已经给定其位置)。注意设置库目录和设置附加依赖项一起才能告诉链接器链接哪个附加依赖项。

说明:一般可能误认为对于32位系统,这里选择X86,而对于64位系统这里要选择X64。其实这样理解是不对的,我们不用管操作系统是多少位的,只看我们用的是32位的编译器还是用64位的编译器,即我们在编译程序时使用的是哪个编译器。
D: \Program Files\opencv\build\x64\vc11\lib(编译64位软件时)
D: \Program Files\opencv\build\x86\vc11\lib(编译32位软件时)
二者只能添加一个,都添加上会出错

设置附加依赖项

即【通用属性】 ->【链接器】->【输入】->【附加的依赖项】
opencv_calib3d2413d.lib
opencv_contrib2413d.lib
opencv_core2413d.lib
opencv_features2d2413d.lib
opencv_flann2413d.lib
opencv_gpu2413d.lib
opencv_highgui2413d.lib
opencv_imgproc2413d.lib
opencv_legacy2413d.lib
opencv_ml2413d.lib
opencv_nonfree2413d.lib
opencv_objdetect2413d.lib
opencv_ocl2413d.lib
opencv_photo2413d.lib
opencv_stitching2413d.lib
opencv_superres2413d.lib
opencv_ts2413d.lib
opencv_video2413d.lib
opencv_videostab2413d.lib

opencv_calib3d2413.lib
opencv_contrib2413.lib
opencv_core2413.lib
opencv_features2d2413.lib
opencv_flann2413.lib
opencv_gpu2413.lib
opencv_highgui2413.lib
opencv_imgproc2413.lib
opencv_objdetect2413.lib
opencv_superres2413.lib
opencv_stitching2413.lib
opencv_photo2413.lib
opencv_ocl2413.lib
opencv_nonfree2413.lib
opencv_ml2413.lib
opencv_legacy2413.lib
opencv_ts2413.lib
opencv_video2413.lib
opencv_videostab2413.lib
Debug文件库名有d结尾,Release没有

原理:设置库目录—Tells the linker where to look for libraries. 设置附加依赖项—Tells the linker what libraries to look for in those directories. 注意设置库目录和设置附加依赖项一起才能告诉链接器链接哪个附加依赖项。

VS属性设置

注意Microsoft.Cpp.Win32.user和Microsoft.Cpp.x64.user属性表单是全局的,注意查看属性对话框的名字。

这里写图片描述

上面两个属性表单在C:\Users\xxxx\AppData\Local\Microsoft\MSBuild\v4.0

这里写图片描述

还有VS的属性是有继承关系的,属性继承:
1. 项目属性已分层。 每层继承前一层的值,但是继承的值可以通过设置属性显式重写。 这是基本的继承树:
来自 MSBuild CPP 工具集的默认设置(..\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.Cpp.Default.props,由 .vcxproj 文件导入。)
2. 属性表
3. .vcxproj 文件。(可能重写默认设置和属性页设置。)
4. 项元数据

提示:在属性页中,加粗的属性在当前上下文中定义。 普通字体的属性将被继承

参考链接

http://blog.sina.com.cn/s/blog_6dd65c6f0100vveq.html
http://www.cppblog.com/amazon/archive/2009/09/04/95318.html
https://msdn.microsoft.com/zh-cn/library/669zx6zc(v=vs.120).aspx
http://blog.csdn.net/u013058751/article/details/52237588
另外可以参考opencv库自带的教程opencv_tutorials.pdf的1.5节

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wugou2014

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值