win10X64 + vs2015通过Cmake编译Opencv(一)
来源:互联网 发布:90后初中听的网络歌曲 编辑:程序博客网 时间:2024/06/03 18:56
写在前面的话:
为什么需要使用Cmake编译安装?在我目前的印象中主要有两个原因:一是能够看OpenCV的源代码;而是能够生成能在没有opencv环境的电脑系统下运行的可执行文件。同时建议大家先看看第七点,也就是我在编译安装过程中遇到过什么错误,是什么原因造成的之后再开始编译安装,这样能避免重复我的错误
1.安装vs2015
我的VS2015是中文专业版,修改了路径,直接默认安装;之后在网上找了一个秘钥解除30天的试用期的限制。
2.解压OpenCV3.1.0
直接运行.exe文件即可,将解压的文件夹放在自己想要的目录中。解压结果是一个名为opencv的文件夹,内容如下:
3.安装Cmake
到这里下载Cmake文件,下载cmake-3.6.1-win64-x64.msi安装(版本不对会出错,详情见后文,这里截图都是用我最开始错误版本的截图)。
4.Cmake编译Opencv
运行cmake软件,制定source code路径为OpenCV解压所得的sources文件夹路径,在选定生成路径,如下图:
点击configure,选定编译器为Visual Studio 14 2015,点击finish。
如果没有错误的话,会出现configure done,忘了截图
手动勾选两项内容:
BUILD_EXAMPLES
BUILD_opencv_world
再次点击Configure,又会出现configure done,结果如下:
再点击generate,生产sln工程
5.打开OpenCV.sln工程
打开生产的sln工程,如下图:
点击生产->批生成,选择如下:
注意:不要勾选ALL_BUILD对应的两项,这是我首次尝试的时候勾选的,失败了。成功的那次没有勾选
结果如下:
6.配置
1.设置环境变量
右击 我的电脑->属性->高级系统设置->环境变量->系统变量->编辑Path->新建, 添加路径:D:\OpenCV3.1.0\opencv\cbuild\install\x64\vc14\bin
2.配置vs2015
新建一个控制台应用程序,勾选空项目。(用vs新建工程默认不截图了。。。)
在 属性管理器->Debug | x64->Microsoft.Cpp.x64.user 上 右键->属性 打开属性页
C/C++–> 常规 –> 附加包目录,添加
链接器—>附加库目录
链接器—>输入
注意带d和不带d的顺序,应该会有影响
7.测试
在该工程的cpp文件中添加如下代码
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
相应路径下有名为test.jpg的图片
运行(有可能需要重启)
结果如下:
8.错误总结
错误一:vs2015模块不全
如果vs安装有问题,就会出现如下错误:
Error in configuration process, project files may be invalid.
No CMAKE_CXX_COMPILER could be found.
错误提示为没有找到相应的编译器,这是由于vs2015相应模块没有安装的问题,点击新建项目,在已安装模块的Visual C++下吧相应的模块安装完毕就能解决这个错误
错误二:缺少一些文件
再次出现如下错误:
这是由于cmake时需要下载opencv_ffmpeg_64.dll,opencv_ffmpeg.dll以及ippicv_windows_20151201.zip,但是自动下载会出错。所以需要先下好,放到相应的位置。文件下载在这里,里面有使用方法
错误三:camke版本问题
我最开始下载的目前最新的版本cmake-3.7.0-rc3-win64-x64.msi。Cmake能够通过,但是打开Opencv.sln之后批生成是无法成功的,错误如下
- win10X64 + vs2015通过Cmake编译Opencv(一)
- win10X64 + vs2015通过Cmake编译Opencv
- OpenCV环境配置(VS2015+WIN10x64+OpenCV3.2)
- vs2015用cmake编译opencv问题总结
- opencv3.3.0+vs2015+cmake编译opencv x86
- 在vs2015下利用cmake编译opencv 3.1
- Window7 下编译Opencv 3.3+contrib模块+Cmake+VS2015
- 【Opencv】通过CMake编译Opencv,开启ippicv、tbb、ffmpeg功能
- CMake编译VS2015+OpenCV3.1
- VS2015编译opencv
- win10 vs2015 opencv编译
- 在VS2015上安装OpenCV3.0以及利用CMake编译OpenCV
- 使用Cmake生成CEF的项目源文件,并在VS2015中编译通过
- cmake编译opencv程序
- CMake OpenCV源代码编译
- cmake 编译OpenCV程序
- CMake编译opencv
- Cmake编译OpenCV源码
- Margin set programmatically on RadioButton not applied
- 一键转发工具share.js
- echart——ip地区分布地图
- python3 运行出现'ascii' codec can't encode characters in position 10-11: ordinal not in range(128)错误解决方案
- js中map函数的用法
- win10X64 + vs2015通过Cmake编译Opencv(一)
- 关于工作中常见的类型错误
- php qrcode生成二维码
- Shell运算符:Shell算数运算符、关系运算符、布尔运算符、字符串运算符等
- 省市选择数据库SQL Server语句
- Tomcat8+redis做session同步
- stf使用经验--在windows平台连接Mac上stf的过程
- java MD5(Message Digest Algorithm 5)加密算法
- C# 实现的一种Socket通讯框架