系统相关
首页 > 系统相关> > 在Linux下OpenCV的下载和编译

在Linux下OpenCV的下载和编译

作者:互联网

原理上来说,和windows下没有差别,我们同样使用Cmake-GUI来解决问题。我们推荐QT和OpenCV全部采用官方的方式重新安装一遍,否则可能会丢失一些模块,而这些都会降低开发效率。
1、参考相关资料,为了避免麻烦,首先安装一些预置环境:

必须安装依赖的库

sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

可以选择安装的
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

2、从github上下载相关代码:


这里我们只安装基本的代码,如果结合contrib的话请参考相关资料。比如 

《(5编译使用最新opencv)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练>

https://www.cnblogs.com/jsxyhelu/p/8000819.html
为了保证资料的最新性,这里坚持把最新版的OpenCV4通过GitHub下载下来,的确比较消耗时间。我使用的Ubuntu是16.04,目前还没有升级到18.04,但是将来会升级,18.04在易操作性上做得更棒。
如果从github上下载资料比较慢,请参考相关修改host的文章

3、打开cmake-gui开始编译
两次Make,一次generate,主要是下载ipp比较消耗时间。
而后打开目录进行make,sudo make install 
这里几个注意的地方:、不要使用world,不知道为什么这种情况下会报错(crash错误)
读懂这段:如果共享库文件安装到了/usr/local/lib(很多开源的共享库都会安装到该目录下)或其它"非/lib或/usr/lib"目录下, 那么在执行ldconfig命令前, 还要把新共享库目录加入到共享库配置文件/etc/ld.so.conf中, 如下:

# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
# echo "/usr/local/lib" >> /etc/ld.so.conf
# ldconfig

我们肯定是需要修改的
最后,我的结果为:
INCLUDEPATH += /usr/local/include/opencv4 \
               /usr/local/include/opencv4/opencv2


LIBS += /usr/local/lib/libopencv_highgui.so\
        /usr/local/lib/libopencv_core.so\
        /usr/local/lib/libopencv_videoio.so\
        /usr/local/lib/libopencv_imgcodecs.so\
        /usr/local/lib/libopencv_imgproc.so
 4、编写测试程序


来自为知笔记(Wiz)




标签:lib,编译,dev,libopencv,OpenCV,so,usr,Linux,local
来源: https://www.cnblogs.com/jsxyhelu/p/10349447.html