ubuntu16.04 安装opencv3.4遇到的各种坑

这几天要移植代码,考虑了一下还是用稳定熟悉的ubuntu16.04(yyds)吧,在虚拟机安装好ubuntu后,开始安装opencv3.4.3,本来以为按照流程走,一个小时不成问题,结果…坑是一个接着一个,这我之前安装怎么就没有遇到啊…
1.windows和ubuntu无法共享粘贴板
主机(Windows)和客机(虚拟机ubuntu16.04)不能共享粘贴板,导致我下载的程序没法直接站过去,这里安装了VMware Tools就可以解决了
参考博客:https://blog.csdn.net/engerla/article/details/83009677
注意:一定要看好自己的ubuntu镜像是不是64位的,我就下载了一次64位的,都是泪

2.下载源代码(Opencv + Opencv_contrib)可以根据想要的版本进行挑选
opencv源码:https://github.com/opencv/opencv/releases
contrib源码:https://github.com/opencv/opencv_contrib/tree/3.4.3

3.配置Opencv
①在CMAKE_BUILD_TYPE 值处输入RELEASE,其他保持不变(如果已经存在就不必修改)
②在OPENCV_EXTRA_MODULES_PATH处,选择输入目录(单击这一行后方空白处即可选中)
③在BUILD_opencv_world后面打√
参考:https://blog.csdn.net/qq_40806289/article/details/84075449?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.control&dist_request_id=&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.control
4.1make的时候告诉我缺少了什么文件,上网查一下,放在了opencv/…/…/src?里面好像是,然后就OK了

4.2进入自己的build文件后,make的时候,到百分之九十九的时候出现了问题,
找不到什么 cuda.hpp文件,我是这么改的,网上说改CMakelists.txt文件,但是我改成绝对路径不大行(可能是操作不对),
提示说3个地方还不是4个地方找不到,但是亲测只需要改最后提示那个文件就可,把include …cuda.hpp,改成绝对路径,不知道绝对路径就打开cuda.hpp文件夹然后pwd一下看看路径,不然容易白给

5.真不容易安装好了,要配置环境变量又出了问题
正常来说是这样的
在这里插入图片描述
然后我继续想测试的时候发现,不大行,opencv.pc这个文件有问题
我发现总体来说就是编译的没有找到依赖
解决方法:
①sudo locate opencv.pc 先找到这个文件在哪里,在的话不用慌,不在的话可以砸电脑了(别忘了先装一下locate)
②发现有一个,然后把他复制到 /usr/lib/pkgconfig 这里,没有这个文件就自己创建一个
③pkg-config --cflags --libs opencv,看一下是否正常

5.没想到在安装好Opencv后,在测试的时候又出了叉子
在安装完Opencv库之后,打算测试一下Opencv库是否成功安装。用的例子对应的.cpp代码以及对应的CMakeLists.txt代码都是网上经典的,但是cmake . 的时候出问题,说找不到FindOpencv.cmake 和 OpencvConfig.cmake
在这里插入图片描述
CMake Error at CMakeLists.txt:5 (find_package):By not providing “FindOpencv.cmake” in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by “Opencv”, but CMake did not find one.

参考解决方法:https://www.cnblogs.com/newneul/p/8364924.html
这里作者提供了2种大方法,我选择的第2种方法的第一种,亲测OK

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值