Ubuntu16.04 安装OpenCV4.5.4 避坑

Ubuntu16.04 安装C++版OpenCV4.5.4

Ubuntu16.04 VSCode下cmake+clang+lldb调试c++

文章目录

  • Ubuntu16.04 安装C++版OpenCV4.5.4
  • 1. 下载Opencv压缩包
  • 2. 安装Opencv-4.5.4
  • 3. 配置OpenCV的编译环境
  • 4.测试是否安装成功


1. 下载Opencv压缩包

下载Opencv压缩包,选择source版本。
下载官网:Releases - OpenCV
在这里插入图片描述下载完opencv压缩包后,将其解压到home目录下。

2. 安装Opencv-4.5.4

打开终端

cd opencv-4.5.4
sudo su  #进入root权限
sudo apt-get update
sudo apt-get install cmake
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-devmkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local .. #注意最后面两个点(local空格..)
sudo make
sudo make install

3. 配置OpenCV的编译环境

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

上述命令执行完后,会出现一个空白的文件。
在文件中添加 /usr/local/lib,点右上角保存,关闭此文件

终端执行以下指令

sudo ldconfig 

如果报错,可以执行以下指令:

sudo mv /usr/lib/nvidia-375/libEGL.so.1 /usr/lib/nvidia-375/libEGL.so.1.org 
sudo mv /usr/lib32/nvidia-375/libEGL.so.1 /usr/lib32/nvidia-375/libEGL.so.1.org 
sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.39 /usr/lib/nvidia-375/libEGL.so.1 
sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.39 /usr/lib32/nvidia-375/libEGL.so.1

接着执行以下指令:

sudo gedit /etc/bash.bashrc

在这个文件的末尾,加入

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

点击保存,然后关闭文件。
终端执行以下指令:

source /etc/bash.bashrc 
sudo updatedb 

注意:重新进入终端,也是要在opencv-4.5.4/build 目录下进行的。

4.测试是否安装成功

opencv-4.5.4/samples/cpp/example_cmake
cmake . 
make 
./opencv_example

出现 “hello opencv ”,即表示配置成功

参考
Ubuntu16.04 安装 OPENCV详细教程 避坑

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RabbitMQ集群安装rabbitmq_delayed_message_exchange

1、单节点安装rabbitmq安装延迟队列 安装延迟队列rabbitmq_delayed_message_exchange可以参考这个文章: rabbitmq安装延迟队列-CSDN博客 2、集群安装rabbitmq_delayed_message_exchange 在第二个节点 join_cluster 之后,start_app 就会报错了 (CaseC…

QT开发:事件循环与处理机制的概念和流程概括性总结

事件循环与处理机制的概念和流程 Qt 事件循环和事件处理机制是 Qt 框架的核心,负责管理和分发各种事件(用户交互、定时器事件、网络事件等)。以下是详细透彻的概念解释和流程讲解。 1. 事件循环(Event Loop)的概念 …

博客搭建 — GitHub Pages 部署

关于 GitHub Pages GitHub Pages 是一项静态站点托管服务&#xff0c;它直接从 GitHub 上的仓库获取 HTML、CSS 和 JavaScript 文件&#xff0c;通过构建过程运行文件&#xff0c;然后发布网站。 本文最终效果是搭建出一个域名为 https://<user>.github.io 的网站 创建…

网络通信---MCU移植LWIP

使用的MCU型号为STM32F429IGT6&#xff0c;PHY为LAN7820A 目标是通过MCU的ETH给LWIP提供输入输出从而实现基本的Ping应答 OK废话不多说我们直接开始 下载源码 LWIP包源码&#xff1a;lwip源码 -在这里下载 ST官方支持的ETH包&#xff1a;ST-ETH支持包 这里下载 创建工程 …

【MySQL】存储引擎有哪些?区别是什么?

频率难度60%⭐⭐⭐⭐ 这个问题其实难度并不是很大&#xff0c;只是涉及到的相关知识比较繁杂&#xff0c;比如事务、锁机制等等&#xff0c;都和存储引擎有关系。有时还会根据场景选择不同的存储引擎。 下面笔者将会根据几个部分尽可能地讲清楚 MySQL 中的存储引擎&#xff0…

【系统环境丢失恢复】如何恢复和重建 Ubuntu 中的 .bashrc 文件

r如果你遇到这种情况&#xff0c;说明系统环境的.bashrc 文件丢失恢复&#xff1a; 要恢复 ~/.bashrc 文件&#xff0c;可以按照以下几种方式操作&#xff1a; 恢复默认的 ~/.bashrc 文件 如果 ~/.bashrc 文件被删除或修改&#xff0c;你可以恢复到默认的版本。可以参考以下…

人工智能丨智能化测试解决方案全面解析

智能化测试解决方案通过整合前沿的人工智能技术与自动化测试技术&#xff0c;为软件产品的测试工作带来了前所未有的高效与智能。 智能化测试解决方案主要内容 大语言模型私有部署&#xff1a;确保文档理解、代码分析和测试生成过程中的安全与隐私&#xff0c;让你无后顾之忧…

Element修改表格结构样式集合(后续实时更新)

场景 修改前端Element组件el-table样式 实现 线表格 <div class"tablepro"><el-table:data"tableData":header-cell-style"{ textAlign:center}"class"tablepro-table"borderstyle"width: 100%;height:100%"&g…

C++语言的语法糖

C语言的语法糖 在现代编程语言的设计中&#xff0c;语法糖&#xff08;Syntactic Sugar&#xff09;是一个非常重要的概念。它指的是一种编程语言所提供的语法特性&#xff0c;使得代码更加简洁易读&#xff0c;编写更加方便&#xff0c;而不是增加语言的功能。C作为一种强大的…

基于Redis实现短信验证码登录

目录 1 基于Session实现短信验证码登录 2 配置登录拦截器 3 配置完拦截器还需将自定义拦截器添加到SpringMVC的拦截器列表中 才能生效 4 Session集群共享问题 5 基于Redis实现短信验证码登录 6 Hash 结构与 String 结构类型的比较 7 Redis替代Session需要考虑的问题 8 …

c++入门----模板深入探究与仿函数

1.模板参数加入一个变量 一般只能是int&#xff0c;double要看c的版本&#xff0c;在最新的版本下是支持double模板参数的。 2.适配器的使用 template <class T,class containerdeque<T>> class stack { public:void push_back(const T& x) {_con.push_back…

【Vim Masterclass 笔记22】S09L40 + L41:同步练习11:Vim 的配置与 vimrc 文件的相关操作(含点评课内容)

文章目录 S09L40 Exercise 11 - Vim Settings and the Vimrc File1 训练目标2 操作指令2.1. 打开 vimrc-sample 文件2.2. 尝试各种选项与设置2.3. 将更改内容保存到 vimrc-sample 文件2.4. 将文件 vimrc-sample 的内容复制到寄存器2.5. 创建专属 vimrc 文件2.6. 对于 Mac、Linu…

kafka学习笔记5 PLAIN认证——筑梦之路

在Kafka中&#xff0c;SASL&#xff08;Simple Authentication and Security Layer&#xff09;机制包括三种常见的身份验证方式&#xff1a; SASL/PLAIN认证&#xff1a;含义是简单身份验证和授权层应用程序接口&#xff0c;PLAIN认证是其中一种最简单的用户名、密码认证方式&…

深入解析 Spring 框架中的事务传播行为

目录 &#xff08;一&#xff09;REQUIRED &#xff08;二&#xff09;SUPPORTS &#xff08;三&#xff09;MANDATORY &#xff08;四&#xff09;REQUIRES_NEW &#xff08;五&#xff09;NOT_SUPPORTED &#xff08;六&#xff09;NEVER &#xff08;七&#xff09;NE…

60,【1】BUUCF web [RCTF2015]EasySQL1

先查看源码 1&#xff0c;changepwd&#xff08;修改密码&#xff09; <?php // 开启会话&#xff0c;以便使用会话变量 session_start();// 设置页面的内容类型为 HTML 并使用 UTF-8 编码 header("Content-Type: text/html; charsetUTF-8");// 引入配置文件&…

高并发内存池_CentralCache(中心缓存)和PageCache(页缓存)申请内存的设计

三、CentralCache&#xff08;中心缓存&#xff09;_内存设计 &#xff08;一&#xff09;Span的创建 // 页编号类型&#xff0c;32位下是4byte类型&#xff0c;64位下是8byte类型 // #ifdef _WIN64 typedef unsigned long long PageID; #else _WIN32 typedef size_t PageI…

SimpleHelp远程管理软件存在任意文件读取漏洞(CVE-2024-57727)

免责声明: 本文旨在提供有关特定漏洞的深入信息,帮助用户充分了解潜在的安全风险。发布此信息的目的在于提升网络安全意识和推动技术进步,未经授权访问系统、网络或应用程序,可能会导致法律责任或严重后果。因此,作者不对读者基于本文内容所采取的任何行为承担责任。读者在…

2024年终总结-行到水穷处,坐看云起时

依然是——关于我 我&#xff0c;坐标山东青岛&#xff0c;一位无名的Java Coder&#xff0c;你可以叫我Debug.c亦或者种棵代码技术树。在此不过多赘述关于我&#xff0c;更多的关于我请移步我的2023年年终总结。 2023年终总结-轻舟已过万重山 2024年OKR完成情况 2023年年末…

AI编程工具使用技巧:在Visual Studio Code中高效利用阿里云通义灵码

AI编程工具使用技巧&#xff1a;在Visual Studio Code中高效利用阿里云通义灵码 前言一、通义灵码介绍1.1 通义灵码简介1.2 主要功能1.3 版本选择1.4 支持环境 二、Visual Studio Code介绍1.1 VS Code简介1.2 主要特点 三、安装VsCode3.1下载VsCode3.2.安装VsCode3.3 打开VsCod…

代码随想录day14

二叉树的反转&#xff0c;采用迭代&#xff0c;只能用前序和后序遍历 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(i…