Windows10+VS2013+OpenCV3.4.0+CMake3.7.0 的惨痛经历

编译原码的原因

由于课题的需求,需要使用OpenCV的扩展库xfeature2d,而自己之前初学OpenCV时仅仅是从官网上下载了普通的安装程序,并没有包括扩展库。为了使用扩展库,所以根据视频教程尝试使用CMake编译OpenCV源码,同时编译扩展库。

N次编译的惨痛经历

第一次编译

由于视频教程中,作者为了节省时间,仅仅是用语言描述了一下操作的方式,同时说明了编译的过程,并没有实际的进行完整的编译,因此在视频演示中,编译过程十分的顺利。本想着按照视频教程中的步骤,应该也能顺利的编译通过。
按照视频教程中的方法:

Created with Raphaël 2.2.0 开始 下载OpenCV源码、扩展库源码 下载安装CMake 第一次configure、generate 没有红色报错 添加扩展库路径(精确至modules文件夹) 第二次configure、generate 打开OpenCV.sln,生成INSTALL 结束 yes no

然而,我完整的按照流程走下来,居然报错了!!!
第一次报错
第一次报错
然后查看CMake的CMakeError.log
错误日志
发现,居然缺少了这么多文件!!!
在这里插入图片描述
然后查找解决方法,遇到了这一篇博客:
https://blog.csdn.net/u011736771/article/details/85960300
通过该作者介绍,CMake编译的时候需要下载一些文件,但是由于网络问题可能会造成文件下载失败,因此导致编译不成功。所缺失的11个文件为:

  • boostdesc_bgm.i
  • boostdesc_bgm_bi.i
  • boostdesc_bgm_hd.i
  • boostdesc_lbgm.i
  • boostdesc_binboost_064.i
  • boostdesc_binboost_128.i
  • boostdesc_binboost_256.i
  • vgg_generated_120.i
  • vgg_generated_64.i
  • vgg_generated_80.i
  • vgg_generated_48.i

按照文章中所提出的方法,从给出的网址中获取到了所缺失的11个文件(给出了文件的内容,需要自己复制下来然后创建同名文件然后粘贴进去),然后将文件复制进下图所示路径下,然后再次编译即可。
路径

第二次(第一次失败后不知道尝试了多少次)编译

然后按照上述文章中的方法,再次尝试,然而并没有通过!!!!
直到后来才发现,需要保存的文件并没有完全加载完我就按下了ctrl+A、ctrl+C,所以,文件内容不完整!!!
没有加载完成就复制了
如果需要缺失的11个文件,在此附上下载链接:
https://download.csdn.net/download/qq_41958194/11860509

第三次编译

在多次尝试无果的情况下,很幸运的找到了这篇文章:
https://blog.csdn.net/alegriabaile/article/details/81393893
然后发现,SIFT算法已经申请了专利,所以在CMake编译的时候(第一次configure、generate后)需要勾选一些选项才可进行编译。
需要勾选的选项
然后,终于看到了一丝希望!!!只有一个错误了!!!

第四次编译

最终,我找到了这篇文章,解决了我编译的最后一个错误:error LNK1104: 无法打开文件“python35_d.lib”
https://blog.csdn.net/lixianjun913/article/details/79363011
我是按照这篇文章中的第二种解决方法解决的,即使用:
解决方法
而所需要修改的pyconfig.h文件,需要修改的是第315行object.h文件需要修改的是第56行
待这些操作全部修改完成之后,再次生成INSTALL,终于成功了!!!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值