Ubuntu18.04.6下安装opencv库及OpenCV安装libjasper-dev依赖包错误

目录

01 解压安装包

02 安装cmake和依赖库

03 配置编译环境


01 解压安装包

创建一个名为Opencv的文件夹

mkdir opencv

将源码的压缩包复制到opencv目录下

 

将压缩包解压到opencv文件夹(指定一个文件夹)

unzip opencv-3.4.11.zip -d opencv

02 安装cmake和依赖库

进入opencv

cd opencv-3.4.11

安装cmake

 sudo apt-get install cmake  

配置依赖库

sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff5.dev libswscale-dev libjasper-dev  

 

执行后出现问题
查阅相关资料后,解决问题

OpenCV安装libjasper-dev依赖包错误

解决方法:

  1. sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
  2. sudo apt update
  3. sudo apt install libjasper1 libjasper-dev

出现以下界面,问题解决

再次输入

sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff5.dev libswscale-dev libjasper-dev  

耐心等待几分钟

03 配置编译环境

1. 创建编译文件夹
创建build文件夹

   mkdir build

进入build文件夹   

cd build

使用cmake编译参数

 cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..


生成编译文件

2.使用make创建编译

sudo make -j16

注:单线程编译:sudo make ,这会等待比较长的时间,如果你想更快编译完,可以使用命令:sudo make -j16,而 j16表示使用 16个线程进行编译。

等待编译成功后执行命令

sudo make install


3.配置编译环境

修改 opencv.conf 文件

sudo vim /etc/ld.so.conf.d/opencv.conf

 

打开后的文件是空的,添加 opencv 库的安装路径:/usr/local/lib ,保存退出

执行如下命令使得刚才的配置路径生效 

sudo ldconfig  

修改 bash.bashrc 文件

 sudo gedit /etc/bash.bashrc  

在bash.bashrc 文件最末尾添加

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig  
export PKG_CONFIG_PATH  



保存退出,执行如下命令使得配置生效

 source /etc/bash.bashrc  

更新一下

 sudo updatedb  

至此所有的配置都已经完成。

不放心的话可以查看一下opencv版本信息

pkg-config --modversion opencv

这样opencv库就装好了

参考于 Ubuntu下Opencv安装与使用_ubuntu opencv-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/248203.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Web3.0:抗寻租的互联网平台经济

在数字世界的荒蛮时代,人类的数字大迁徙,纷乱而芜杂,充满着未知与蒙昧。 我们致敬先行者,感恩在黑暗中点亮火把,在泥泞中探索前行的道路。 我们以先行者为师,承续他们的智慧与勇气,在人类数字大…

【强化学习-读书笔记】动态规划(策略评估、价值迭代、策略迭代算法)

参考 Reinforcement Learning, Second Edition An Introduction By Richard S. Sutton and Andrew G. Barto动态规划 (Dynamic Programming, DP) 是一类优化方法,在给定一个用马尔可夫决策过程 (MDP) 描述的完备环境模型的情况下,其可以计算最优的策…

【Jeecg Boot 3 - 保姆级】第1节 docker + redis + nginx + redis一键安装启动

一、前言 ▶ JEECG-BOOT 开源版难以吃透的原因 ▶ 为了针对上面痛点,笔者做了如下安排 ▶ 你能收获什么 二、效果(第一节效果) ▶ 启动后端 > 日志 > 接口文档 ▶ 启动前端 三、准备工作 四、实战 ▶ 1、服务器安装 Stag…

RF模块是如何工作的?

射频(RF)模块使用无线电频率工作,这个频率范围在30kHz到300kHz之间变化。 在这个射频系统中,数字数据被表示为载波波幅度的变化。这种调制类型是振幅移位键。 这个射频模块是射频发射器和接收器的组合,发射器接收器对的…

读书笔记-《数据结构与算法》-摘要6[快速排序]

快速排序 核心:快排是一种采用分治思想的排序算法,大致分为三个步骤。 定基准——首先随机选择一个元素最为基准划分区——所有比基准小的元素置于基准左侧,比基准大的元素置于右侧递归调用——递归地调用此切分过程 快排的实现与『归并排…

伪距单点定位概念与原理、算例分析

目录 一、概念与原理 1.伪距观测值 2.为何被称为"伪距" ? 3.单点定位的概念 4.伪距单点定位的原理 5.伪距单点定位的优缺点 二、伪距观测方程 三、伪距观测方程线性化 1.泰勒级数展开 2.得到线性化后的观测方程 3.在某历元接收机同时观测n颗卫星&#xf…

视频号小店需要缴纳保证金吗?保证金缴纳标准,不懂的快来看!

我是电商珠珠 入驻视频号小店,需要缴纳保证金吗?具体缴纳多少?... 这是想要入驻视频号小店的热门话题,今天我就来给大家一一讲明白。 想要入驻视频号小店,就必须要缴纳保证金。保证金是平台为了约束商家的行为&…

递推与递归练习题

公众号:编程驿站 题目来源于洛谷! 数楼梯 题目描述 楼梯有 N 阶,上楼可以一步上一阶,也可以一步上二阶。 编一个程序,计算共有多少种不同的走法。 输入格式 一个数字,楼梯数。 输出格式 输出走的方…

智能优化算法应用:基于阴阳对算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于阴阳对算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于阴阳对算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.阴阳对算法4.实验参数设定5.算法结果6.参考文…

PR模板,复古怀旧电影效果视频制作PR项目工程文件

Premiere复古怀旧电影效果视频制作pr模板项目工程文件下载 这个PR模板以复古城市印象电影质感为特色,结合了电影和数字故障效果。包含6个场景。可以编辑文本、添加媒体和自定义颜色。包含视频教程。4K版本。不需要任何插件。 软件支持:PR2022 | 分辨率&a…

人类简史作者警告:人工智能或将夺取世界主宰 / 机器学习加速新药研发,AI的崭新角色|魔法半周报

我有魔法✨为你劈开信息大海❗ 高效获取AIGC的热门事件🔥,更新AIGC的最新动态,生成相应的魔法简报,节省阅读时间👻 🔥资讯预览 机器学习加速新药研发,AI的崭新角色 2022年中国研发经费总投入突…

RocketMQ源码 Broker-SubscriptionGroupManager 订阅组管理组件源码分析

前言 SubscriptionGroupManager 继承了ConfigManager配置管理组件,拥有将内存数据持久化到磁盘文件subscriptionGroup.json的能力。它主要负责维护所有消费组在内存中的订阅数据。 源码版本:4.9.3 源码架构图 核心数据结构 主要的数据结构比较简单&am…

CMS—评论功能设计

一、需求分析 1.1、常见行为 1.敏感词过滤 2.新增评论(作品下、评论下) 3.删除评论(作品作者、上级评论者、本级作者) 4.上级评论删除关联下级评论 5.逻辑状态变更(上线、下线、废弃...) 6.上逻辑状态变更…

Java报错-Non-terminating decimal expansion; no exact representable decimal result

1. 背景 在使用 BigDecimal 的 divide() 对两个数相除时,报了如题的错误。 public class Test {public static void main(String[] args) {BigDecimal b1 new BigDecimal(1);BigDecimal b2 new BigDecimal(3);System.out.println(b1.divide(b2)); // Sys…

jupyter notebook介绍、安装和使用

简介 Jupyter Notebook是基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。——Jupyter Notebook官方介绍 简而言之,Jupyter Notebook是以网页的形式打开,可以在网页页面中直接编写代码和运…

Shell三剑客:文本过滤工具——grep

一、简介&#xff1a;过滤&#xff0c;查找文档中的内容 二、分类 grepegrep——扩展支持正则\w所有字母与数字&#xff0c;称为字符[a-zA-Z0-9] l[a-zA-Z0-9]*ve l\w*ve\W所有字母与数字之外的字符&#xff0c;称为非字符 love[^a-zA-Z0-9] love\W\b词边界 \<love\>…

力扣每日一题day32[104. 二叉树的最大深度]

给定一个二叉树 root &#xff0c;返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;3示例 2&#xff1a; 输入&#xff1a;root [1,null,2] 输出…

winform中也可以这样做数据展示✨

1、前言 在做winform开发的过程中&#xff0c;经常需要做数据展示的功能&#xff0c;之前一直使用的是gridcontrol控件&#xff0c;今天想通过一个示例&#xff0c;跟大家介绍一下如何在winform blazor hybrid中使用ant design blazor中的table组件做数据展示。 2、效果 先来…

MYSQL练题笔记-子查询-换座位

一、题目相关内容 1&#xff09;相关的表和题目 2&#xff09;帮助理解题目的示例&#xff0c;提供返回结果的格式 二、自己初步的理解 没啥思路&#xff0c;我还没做过交换的这种题&#xff0c;所以我觉得这类交换的题以后值得做一个合集&#xff0c;是有点灵活度在里面的&a…

computed 和 watch 的奇妙世界:让数据驱动你的 Vue 应用(上)

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…