linux安装及配置c++的opencv库

前言:

最近想搞个机器视觉的比赛,要求是linux+opencv环境,没有做过opencv开发的我配置环境就配了两天,看来很多乱七八糟的博客,终于装好了。网上的大神的博客太详细,太麻烦,还不通用,所以学习了这么多经验后写这篇博客分享给和我一样的入门级选手,重复一遍,这是一篇为入门选手提供便利的博客。

下面有一个步骤出现的问题,我忘记是哪一个步骤了,好像是CMakeCache.txt文件相关,好像把这个文件删掉就行了。解决方法

我的环境:

os:ubuntu16.4.5-amd64

gcc:gcc (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609

opencv:OpenCV-3.4.5下载地址

g++:g++ (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609

步骤:

1、更新ubuntu上的软件源,不要担心,中端里执行两个命令就行

命令一:sudo apt-get update

命令二:sudo apt-get upgrade

第二个命令可能会出现错误:sudo apt-get grade Could not get lock /var/lib/dpkg/lock - open (11: Resource.....解决方法

2、安装cmake(用来搭建opencv的,不管了执行两个命令就行)

命令一: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-dev

这步我记得是没出问题的,如果出了也是很容易解决,应该百度一下就能解决。以下同理,我没有说明的就不会有麻烦的问题出现。

3、下载解压opencv(博客开头已给出链接)

解压后如图(其中的release文件夹是下一步自己建的)

4、设置cmake参数(别担心,还是继续傻瓜式运行命令)

在解压后文件夹里新建release文件夹,在在终端里进入release文件夹(也可以直接在release文件夹内右键打开Terminal)。

要运行的命令(不要漏掉空格和两点,下面两个命令随便运行一个不报错就行):

sudo cmake -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON ..
或者直接采用默认
sudo cmake ..

5、编译opencv(还是只要运行命令)

这时终端(Terminal)的路径还是在release文件夹内
sudo make
sudo make install

6、配置环境变量(这是唯一有点麻烦的一般,特别是不会vim操作的话)

sudo gedit /etc/ld.so.conf.d/opencv.conf(可自行创建)
末尾添加一行:/usr/local/lib

sudo ldconfig       # 更新一下系统的共享链接库
sudo gedit /etc/bash.bashrc
末尾添加一行:
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
vim /etc/bash.bashrc         #vim编辑文件(不会vim可能有难度)
# 在文件末尾加入
export LD_LIBRARY_PATH=/home/lp/soft/opencv-3.4.2/release/lib:$LD_LIBRARY_PATH
#上面保存退出vim后再运行以下命令:
source /etc/bash.bashrc

上面设计vim编辑器的使用,如果不会又不愿百度学习的话可以用gedit编辑器,即把命令vim /etc/bash.bashrc改成gedit /etc/bash.bashrc

如果编辑完文件后提升保存失败(英文提示文件为只读,可以百度一下chmod命令的使用,把文件权限改为777就行,具体百度以下吧),提供参考链接菜鸟或者chmod命令的博客

7、试运行使用了opencv的c++代码

怎么编译运行代码详见博客

可能还涉及一个g++的安装,也就一个命令而已,自行百度吧。

我的运行结果如下:

linux安装及配置c++的opencv库的更多相关文章

  1. Linux 安装oracle10g 配置dataguard 介绍和步骤

            DataGuard是甲骨文推出的一种高可用性数据库方案,在Oracle 8i之前被称为Standby Database.从Oracle 9i开始,正式更名为Data Guard.它是在 ...

  2. Linux 安装及配置 Nginx + ftp 服务器

    Nginx 安装及配置 一.Nginx 简介: Nginx("engine x") 是一款是由俄罗斯的程序设计师 Igor Sysoev 所开发高性能的 Web和 反向代理服务器, ...

  3. 基于深度学习的人脸识别系统Win10 环境安装与配置(python+opencv+tensorflow)

    一.需要下载的软件.环境及文件 (由于之前见识短浅,对Anaconda这个工具不了解,所以需要对安装过程做出改变:就是Python3.7.2的下载安装是可选的,因为Anaconda已经为我们解决Pyt ...

  4. Arch Linux 安装、配置、美化和优化

    国庆假期玩了下Arch Linux,发现这货跟Ubuntu之流相差甚远,甚难调教,而且安裝过程全命令行,会有各种问题,各种知识... --- 安装引导器--- -------------------- ...

  5. Microsoft SQL Server for Linux安装和配置

    虽说mssql for linux早已经出来了,但原本没有打算这么早就去尝试的,无奈之下还是得先尝试用了,这里分几篇介绍我在用mssql for linux时遇到的问题,不得不说作为先吃螃蟹的人总是要 ...

  6. Linux学习(一)--VMware下Linux安装和配置

    本片随便将给大家讲述linux在VM虚拟机上安装及终端的安装和配置 一.Linux介绍 Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线 ...

  7. Redis - (Linux)安装与配置

    Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis 与其他 key - value 缓存产品有以下三个特点: 1:Redis支持数据的持久化,可以将内存 ...

  8. linux安装和配置 mysql、redis 过程中遇到的问题记录

    linux下部署mysql和redis网上的教程很多,这里记录一下我部署.配置的过程中遇到的一些问题和解决办法. mysql ①安装完成后启动的时候报错 Starting MySQL.The serv ...

  9. deepin linux安装与配置

    作者:相思羽  出处:http://www.cnblogs.com/xiang-siyu 欢迎转载,也请保留这段声明.谢谢! deepin linux是由深度开发的操作系统,基于debian,内置了搜 ...

随机推荐

  1. don't run elasticsearch as root.

    因为安全问题elasticsearch 不让用root用户直接运行,所以要创建新用户 第一步:liunx创建新用户  adduser XXX    然后给创建的用户加密码 passwd XXX    ...

  2. 20155305乔磊2016-2017-2《Java程序设计》第八周学习总结

    20155305乔磊2016-2017-2<Java程序设计>第八周学习总结 教材学习内容总结 通用API 日志API 1.java.util.logging包提供了日志功能相关类与接口, ...

  3. Sublime遇见中文乱码问题?

    今天在写demo的时候,突然发现html页面上的中文在浏览器上显示乱码~!!!!! 这时,我根据网上的提示安装了两个插件:converttoUtf-8,support Gbk ~~~然而,好像无济于事 ...

  4. JS设计模式——7.工厂模式(示例-XHR)

    XHR工厂 基本实现 var AjaxHandler = new Interface('AjaxHandler', ['request', 'createXHR']); var SimpleHandl ...

  5. Openflow Plugin学习笔记3

    MDController.java 中的start方法,创建了SwitchConnectionHandlerImpl实例 SwitchConnectionHandlerImpl switchConne ...

  6. jQuery遍历方式

    对象遍历

  7. _csv.Error: line contains NULL byte

    原因是表格保存时扩展名为 xls,而我们将其改为csv文件通常是重命名: 解决方法只需把它另存为 csv 文件.

  8. JavaScript入门--慕课网学习笔记

     JAVASCRIPT—(慕课网)入门篇 我们来看看如何写入JS代码?你只需一步操作,使用<script>标签在HTML网页中插入JavaScript代码.注意, <script&g ...

  9. 洛谷 P4175: bzoj 1146: [CTSC2008]网络管理

    令人抓狂的整体二分题.根本原因还是我太菜了. 在学校写了一个下午写得头晕,回家里重写了一遍,一个小时就写完了--不过还是太慢. 题目传送门:洛谷P4175. 题意简述: 一棵 \(n\) 个结点的树, ...

  10. NB-iot 和 emtc两种技术区别

    此前有报道称,工信部正在拟定推动窄频物联网(NB-IoT)标准化,并对NB-IoT模块外形.封装以及针脚定义等提出新规范.业内人士认为,标准出台后将促进物联网规模化商用全面提速,迎来行业成长爆发期. ...