ubuntu20.04手动编译opencv 4.9.0遇到的问题汇总

embedded/2024/12/21 22:44:36/

ubuntu2004opencv_490_0">ubuntu20.04手动编译opencv 4.9.0遇到的问题汇总

编译流程

以4.9.0版本为例,可参考:

  • https://docs.opencv.org/4.9.0/d2/de6/tutorial_py_setup_in_ubuntu.html
  • https://linuxize.com/post/how-to-install-opencv-on-ubuntu-20-04/
  • https://blog.csdn.net/weixin_44003563/article/details/90404745
  • https://www.mintimate.cn/2021/11/07/installOpenCV/#%E5%AF%BC%E5%85%A5Python
  • https://blog.csdn.net/qq_25005909/article/details/78554469(主要参考)

分享下我的命令:

git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.gitcd opencv
mkdir build
cd buildsudo cmake -D CMAKE_BUILD_TYPE=RELEASE -D  CMAKE_INSTALL_PREFIX=/usr/local/opencv -D CUDA_GENERATION=Auto OPENCV_EXTRA_MODULES_PATH=/home/user/yuanjinmin/opencv_contrib/modules/ -D BUILD_opencv_python3=ON -D PYTHON_DEFAULT_EXECUTABLE=/home/user/anaconda3/envs/yjm_slowfast/bin/python3.9  -D PYTHON3_LIBRARIES=/home/user/anaconda3/lib/libpython3.9.so -D PYTHON3_NUMPY_INCLUDE_DIRS=/home/user/anaconda3/envs/yjm_slowfast/lib/python3.9/site-packages/numpy/core/include -D PYTHON3_EXECUTABLE=/home/user/anaconda3/envs/yjm_slowfast/bin/python3.9 ..sudo make -j8 # 结合自己服务器线程sudo make installsudo ldconfigexport PYTHONPATH="$PYTHONPATH:/usr/local/opencv/lib/python3.9/site-packages"python3 -c "import cv2; print(cv2.__version__)"

编译加速

https://blog.csdn.net/tfb760/article/details/104030841

ippicv_2021.10.0_lnx_intel64_20230919_general.tgz下载慢

可参考:https://blog.csdn.net/orDream/article/details/84311697

face_landmark_model.dat下载

可参考:https://blog.csdn.net/pzb19841116/article/details/115519158#comments_32285782

ubuntu2004opencv490_38">ubuntu20.04下编译opencv4.9.0时报错

/usr/bin/ld: /lib/x86_64-linux-gnu/libwayland-client.so.0: undefined reference to ffi_type_uint32@LIBFFI_BASE_7.0' /usr/bin/ld: /lib/x86_64-linux-gnu/libwayland-client.so.0: undefined reference to ffi_type_sint32@LIBFFI_BASE_7.0’
/usr/bin/ld: /lib/x86_64-linux-gnu/libwayland-client.so.0: undefined reference to ffi_type_pointer@LIBFFI_BASE_7.0' /usr/bin/ld: /lib/x86_64-linux-gnu/libwayland-client.so.0: undefined reference to ffi_type_void@LIBFFI_BASE_7.0’
/usr/bin/ld: /lib/x86_64-linux-gnu/libwayland-client.so.0: undefined reference to ffi_prep_cif@LIBFFI_BASE_7.0' /usr/bin/ld: /lib/x86_64-linux-gnu/libwayland-client.so.0: undefined reference to ffi_call@LIBFFI_BASE_7.0’

可参考:https://blog.csdn.net/special00/article/details/135100639
2.

Cannot generate a safe runtime search path for target opencv_imgcodecs
because files in some directories may conflict with libraries in implicit

参考:https://blog.csdn.net/cunyizhang/article/details/124968204

ImportError:libgobject-2.0.so.0: undefined symbol: ffi_type_uint32, version

使用export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libffi.so.7之后在此窗口运行python项目可以解决(每次都要设置,除非放入.bashrc中)

The imported target “openjp2_static” references the file “/usr/lib/x86_64-linux-gnu/libopenjp2.a” but this file does not exist. Possible reasons include: …

报类似于https://github.com/opencv/opencv/issues/18090这样的错误,不用管


http://www.ppmy.cn/embedded/1906.html

相关文章

什么是网络安全,企业如何做好网络安全等级评测

网络安全从其本质上讲就是网络上的信息安全,指网络系统的硬件、软件及数据受到保护。不遭受破坏、更改、泄露,系统可靠正常地运行,网络服务不中断。从用户的角度,他们希望涉及到个人和商业的信息在网络上传输时受到机密性、完整性…

ES6判断:当前数组对象里的所有的值是否都存在于另外一个数组里

介绍 判断当前数组里的值是否都存在于另一个数组里,这里需要用到ES6的 every()方法,及 includes()方法; every(): 用于判断数组中的每一项是否均符合条件,并返回一个布尔值,都符合返回 true,有一个不符合就返回 fals…

前端Vue3之基础知识点碎片

1、Element Plus是啥? Element Plus 是一个基于 Vue 3 框架构建的开源 UI(用户界面)组件库,旨在帮助开发者快速搭建企业级的 Web 应用程序界面。Element Plus 提供了一系列预先设计好的高质量 UI 组件,这些组件涵盖了…

【服务器部署篇】Linux下Jenkins安装和配置

作者介绍:本人笔名姑苏老陈,从事JAVA开发工作十多年了,带过刚毕业的实习生,也带过技术团队。最近有个朋友的表弟,马上要大学毕业了,想从事JAVA开发工作,但不知道从何处入手。于是,产…

生信分析Linux教程-GTF文件处理

P18 GTF文件处理01 P19 GTF文件处理02 生物信息中Linux命令练习 1 统计GTF文件中染色体数目? 2 统计GTF文件中基因数目? 3 计算GTF中外显子总长度? 4 计算GTF文件中基因所拥有的平均转录本数目

标题:探索算法世界的奇妙与力量

标题:探索算法世界的奇妙与力量 在当今信息时代,算法已经成为了我们生活中不可或缺的一部分。从搜索引擎、社交媒体,到无人驾驶、机器人,算法都在其中发挥着重要的作用。本文将为您详细介绍算法的概念、类型、应用场景以及算法的…

EasyUI Jquery 学习笔记 ——DataGrid(数据网格)与 Tree(树)详细版

1. DataGrid(数据网格)与 Tree(树) 1.1 Datagrid 数据网格 扩展自 $.fn.panel.defaults。通过 $.fn.datagrid.defaults 重写默认的 defaults。 数据网格(datagrid)以表格格式显示数据,并为选择、排序、分组和编辑数据提供了丰富的支持。数据网格(datagrid)的设计目…

【python+Excel】读取和存储测试数据完成接口自动化测试

http_request2.py用于发起http请求 #读取多条测试用例 #1、导入requests模块 import requests #从 class_12_19.do_excel1导入read_data函数 from do_excel2 import read_data from do_excel2 import write_data from do_excel2 import count_case #定义http请求函数COOKIENon…