文章目录

  • 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中不能下载的文件

如果你开了梯子,那么麻烦能减少很多,起码很多文件它都能帮你下好

这里注意需要勾选的地方有两项,nonfreeworld,以及 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编译相关推荐

  1. Linux下Centos7以rpm方式离线安装MySQL5.7教程以及部分报错解决方案

    Linux下Centos7以rpm方式离线安装MySQL5.7教程以及部分报错解决方案 参考文章: (1)Linux下Centos7以rpm方式离线安装MySQL5.7教程以及部分报错解决方案 (2) ...

  2. 【转】Latex编译报错后中断编译并改正,然后重复出现不明原因报错的解决方法...

    转自:https://www.douban.com/note/419828344/ 目录: 一.问题描述 二.测试情况(可以跳过,直接看建议) 三.建议 四.参考资料 正文: 问题描述: 错漏某个符号 ...

  3. vue 项目在编译时,总是出现系统崩的状态,node 命令框也会报错,报错信息中有v7 或者 v8 的样式。

    项目场景: 背景: vue 项目在编译时,总是出现系统崩的状态,node 命令框也会报错. 问题描述 问题: vue 项目在编译时,总是出现系统崩的状态,node 命令框也会报错,如下图:有v7 或者 ...

  4. idea java编译报错_intellij-idea,java_idea 编译报错,intellij-idea,java - phpStudy

    idea 编译报错 简单的 helloworld 竟然坑了我一天啦 /Library/Java/JavaVirtualMachines/jdk1.8.0_11.jdk/Contents/Home/bi ...

  5. 关于MVC4项目从32位机移到64位机编译报错解决方案

    早上写了个MVC WEBAPI的demo 机子环境是:XP SP3+ VS2010 + ASP.NET MVC4 然后晚上拿回笔记本进行编译运行,结果报错如下: "/"应用程序中的 ...

  6. android 反编译报错,android反编译

    常用反编译方法: 1.先将.apk改为.zip或者.rar用winrar加压得到classes.dex文件 2.用dex2jar工具将.dex转为.jar,然后用jd-gui就可以打开.jar查看源文 ...

  7. android 编译报错,android avc 编译报错neverallow问题查找

    android avc 编译报错neverallow问题查找 2020年08月11日 | 萬仟网移动技术 | 我要评论 在修改avc后,有时候编译会报错neverallow.这个具体是在什么地方定义的 ...

  8. Android打包编译shrinkResources true报错解决方案

    本文章分析解决在android打包编译时,配置了shrinkResources为true移除无用资源时打包报错的解决方案 1 Android 打包失败 Android 项目打包或者在 flutter项 ...

  9. /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 ...

最新文章

  1. 如何保护你写的 Python 代码?
  2. C语言程序设计第三次作业——选择结构(1)
  3. Django-MySQL数据库使用01
  4. 莱芜长运公共交通有限公司简介
  5. java 线程 释放_java线程似乎不会被释放
  6. 单片机最小系统c语言报告,单片机最小系统实验报告.doc
  7. SpringCache实战遇坑
  8. C语言中的指针型函数值
  9. mysql官网下载详细教程图文
  10. 78M05-ASEMI三端稳压管78M05
  11. 产品经理面试技巧及常见问题
  12. 关于Spring Bean的生命周期
  13. 如何给grldr.mbr和grldr改名
  14. 线粒体可以进行个体识别?
  15. rtmp协议分析(Message 消息,Chunk分块)
  16. 推式配货(Push)、拉式配货(Pull)和配送需求计划(DRP)的区别
  17. 利用stm32做一个升级版的电子多功能密码锁
  18. 噪声分析基础(公式)知识
  19. 机器学习——监督学习(一)
  20. 伦敦经济学院开设加密货币相关课程

热门文章

  1. 华为云客户端_效果图云渲染已成趋势,云渲染如何选择?
  2. 【ABAP Graph】图表显示开发案例
  3. 销售科目确认相关配置
  4. ABAP DOI详解(3)
  5. 出去旅行带上这些常用日语就够啦!
  6. 崂山白花蛇草水:旧款变爆款老字号“有预谋”
  7. FI 与MM SD的接口配置基本方法
  8. update module
  9. 和信贷财报:互金行业收缩压力之下的个体进击之道
  10. 发起http请求_关于HTTP请求发起和响应你了解多少