cmake教程(为什么要用cmake?)(cmake编译opencv)(就是个跨平台的编译工具Linux、windows)(很重要,必须得学)(报错解决方案)opencv编译
文章目录
- cmake编译opencv源码
- 分割线
CMake:简介及工程应用,及为什么要用CMake,使用CMake自动构建工程
mark一下,回头更
cmake编译opencv源码
cmake官网:https://cmake.org/
下Previous Release,稳定点
我下了两个,一个Windows Source (has \r\n line feeds),还有一个Windows x64 ZIP,两个有啥区别?我也不懂,ԾㅂԾ,
用不是源码那个,解压可用
然后根据CMake编译OpenCV走一遍就ok了,但是走不通!
这个也讲了如何用cmake编译
玩转OpenCV3——contrib库
可参考但不建议
这个编译opencv4.4.0,跟我版本一样,跟这个跑一遍
opencv4.4.0(含contrib)编译+cmake+vs2017
opencv-contrib4.4.0
但是我还是编译不过?看这个试试:vs2019编译opencv
分割线
编译过程中遇到报错,就去找那个CMakeDownloadLog.txt看里面报错的准确信息,该下载的文件去下载,然后放到.cache文件夹中,当然还有些文本文件自己下载替换都不行。。。只能自己看着办了
需要注意的一点是,在下载文件的过程中,有的文件文件名头部会有校验码
,该校验码是以文件内容生成的,如果文件内容与标准不一致,生成的校验码就不对,所以不要以复制文件内容的方式下载文件,而要直接去下载文件本身,例如对于以.i
结尾的文件,你可以查看CMakeDownloadLog.txt找到文件下载链接,在浏览器打开,然后右键网页另存为,保存为文件,替换.cache中不能下载的文件
如果你开了梯子,那么麻烦能减少很多,起码很多文件它都能帮你下好
这里注意需要勾选的地方有两项,nonfree
、world
,以及 path要指定下载的contrib中的modules路径
(直接搜关键词)
一直点configure,最后只有一个警告没法解决(这个不用管它),还有遇到的一些问题比如需要安装python2.7
,那就安装一下,选默认安装方式就行;
完后就直接点generate
然后会生成.vcxproj
的项目工程文件,用VS打开它编译
点生成,批生成
然后就能生成需要的库了
因为我的python3.7装到D盘,用visual studio编译时会提示找不到python37_d.lib
,这是一方面因为python安装时没选这两项造成的 ,重新打开python安装程序modify下即可,另一方面是python不是默认安装路径,VS找不到python37_d.lib
,这个找到报错的项目,然后右键属性,直接在链接器-输入-附加依赖项那指定一下路径即可,然后再编译就不会提示找不到了
我发现,在bin文件夹、install、lib文件夹里生成了一些同样的opencv-world动态静库,像bin里面是一些.exe文件,这些动静态库都是生成后拷过去的,install和lib则是我们做项目引用的时候需要拷过去的
另外,如果这些想要分享给python用,可参考:https://cv-tricks.com/how-to/installation-of-opencv-4-1-0-in-windows-10-from-source/
以及:如何从OpenCV源码编译生成OpenCV-Python的SDK开发包
以后还能在python里把它打包成.wheel
给调包侠用
cmake教程(为什么要用cmake?)(cmake编译opencv)(就是个跨平台的编译工具Linux、windows)(很重要,必须得学)(报错解决方案)opencv编译相关推荐
- Linux下Centos7以rpm方式离线安装MySQL5.7教程以及部分报错解决方案
Linux下Centos7以rpm方式离线安装MySQL5.7教程以及部分报错解决方案 参考文章: (1)Linux下Centos7以rpm方式离线安装MySQL5.7教程以及部分报错解决方案 (2) ...
- 【转】Latex编译报错后中断编译并改正,然后重复出现不明原因报错的解决方法...
转自:https://www.douban.com/note/419828344/ 目录: 一.问题描述 二.测试情况(可以跳过,直接看建议) 三.建议 四.参考资料 正文: 问题描述: 错漏某个符号 ...
- vue 项目在编译时,总是出现系统崩的状态,node 命令框也会报错,报错信息中有v7 或者 v8 的样式。
项目场景: 背景: vue 项目在编译时,总是出现系统崩的状态,node 命令框也会报错. 问题描述 问题: vue 项目在编译时,总是出现系统崩的状态,node 命令框也会报错,如下图:有v7 或者 ...
- idea java编译报错_intellij-idea,java_idea 编译报错,intellij-idea,java - phpStudy
idea 编译报错 简单的 helloworld 竟然坑了我一天啦 /Library/Java/JavaVirtualMachines/jdk1.8.0_11.jdk/Contents/Home/bi ...
- 关于MVC4项目从32位机移到64位机编译报错解决方案
早上写了个MVC WEBAPI的demo 机子环境是:XP SP3+ VS2010 + ASP.NET MVC4 然后晚上拿回笔记本进行编译运行,结果报错如下: "/"应用程序中的 ...
- android 反编译报错,android反编译
常用反编译方法: 1.先将.apk改为.zip或者.rar用winrar加压得到classes.dex文件 2.用dex2jar工具将.dex转为.jar,然后用jd-gui就可以打开.jar查看源文 ...
- android 编译报错,android avc 编译报错neverallow问题查找
android avc 编译报错neverallow问题查找 2020年08月11日 | 萬仟网移动技术 | 我要评论 在修改avc后,有时候编译会报错neverallow.这个具体是在什么地方定义的 ...
- Android打包编译shrinkResources true报错解决方案
本文章分析解决在android打包编译时,配置了shrinkResources为true移除无用资源时打包报错的解决方案 1 Android 打包失败 Android 项目打包或者在 flutter项 ...
- /usr/bin/ld: /tmp/ccIHWHTn.o: in function `Cdisk::Cdisk()‘:编译报错解决方案
问题:C++编译时发现一长串编译报错 $ vim ks.cpp $ gcc -o ks ks.cpp 报错: /usr/bin/ld: /tmp/ccIHWHTn.o: in function `Cd ...
最新文章
- 如何保护你写的 Python 代码?
- C语言程序设计第三次作业——选择结构(1)
- Django-MySQL数据库使用01
- 莱芜长运公共交通有限公司简介
- java 线程 释放_java线程似乎不会被释放
- 单片机最小系统c语言报告,单片机最小系统实验报告.doc
- SpringCache实战遇坑
- C语言中的指针型函数值
- mysql官网下载详细教程图文
- 78M05-ASEMI三端稳压管78M05
- 产品经理面试技巧及常见问题
- 关于Spring Bean的生命周期
- 如何给grldr.mbr和grldr改名
- 线粒体可以进行个体识别?
- rtmp协议分析(Message 消息,Chunk分块)
- 推式配货(Push)、拉式配货(Pull)和配送需求计划(DRP)的区别
- 利用stm32做一个升级版的电子多功能密码锁
- 噪声分析基础(公式)知识
- 机器学习——监督学习(一)
- 伦敦经济学院开设加密货币相关课程