终于弄清楚了opencv的配置原理了
2016-12-27 14:35
204 查看
配置步骤
设置环境变量
即设置【(双击)计算机】->【系统属性】->【高级系统设置】->【高级(标签)】->【环境变量】->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.htmlhttp://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节
相关文章推荐
- VS配置Opencv原理
- 图解opencv配置原理
- VS配置Opencv原理
- vs与opencv配置原理要点
- Tomcat中详细配置数据源及其原理解析
- Java学习笔记--Lesson1(Java跨平台原理的剖析和Java环境变量的配置
- 详细介绍在tomcat中配置数据源以及数据源的原理
- 终于完成了ProFTP+MySQL+Quota的配置
- 配置路由器端口映射,我的eMule终于拥有了HighID
- 在自己机器上配置.text95终于成功了
- 终于配置成功了,不过只是走了一小步而已。
- 终于配置好了SHAREPOINT V3 的 AD FROM认证!
- 终于清楚得明白什么叫做文武双全
- IE终于修复好了,原理是COM的问题
- JNDI配置原理详解
- 转:Linux下USB设备的原理、配置、常见问题
- 详细介绍在tomcat中配置数据源以及数据源的原理
- ASP.net(1.1)原理学习笔记--第三章 配置Configuration
- Visual C++6.0中配置OpenCV
- 庆祝一下:配了2周终于把skyeye+uClinux配置成功!