在Linux下OpenCV的下载和编译

完整从代码编译OpenCV在很多情况下是必须的。总体上来看,都是下载、编译、配置这三个过程,其中一些细节值得注意,记录如下。这里以ubuntu为例,其他发行版可能略有不同。

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上下载相关代码:

2020年5月3日 当前最新 https://github.com/opencv/opencv/archive/4.3.0.zip


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

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

https://www.cnblogs.com/jsxyhelu/p/8000819.html

此外,如果从github上下载资料比较慢,请参考相关修改host的文章


3、打开cmake-gui开始编译

总的流程是两次Make,一次generate,其他情况一路回车。其中下载ipp比较消耗时间。
其中,第一次configure是读出有哪些需要配置的内容的,第二次configure是确认这些需要配置的内容,generate是生成make可以编译的内容。
而后进入目录(比如上图的opencv_bin目录)进行
make
sudo make install 
我建议使用cmake-gui而不是cmake,因为在安装过程中,可能会出现一些问题,最好现场解决掉。
其中,make比较消耗时间,install是很快的。
4、 在QT中的配置并 编写测试程序(如果不使用QT可以不看)
读懂这段:
如果共享库文件安装到了/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
 





posted on   jsxyhelu  阅读(275)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示