为了尽可能保证OpenCV的特性,使用OpenCV源代码编译安装在linux上。先从安装其依赖项開始,以ubuntu 14.04.X为例解说在Linux上源代码编译安装OpenCV,其它linux版本号能够类比安装。

此文针对,有一点Linux常识(会使用终端)的读者。

源代码准备

假设不想在安装过程中,一步步的下载、编译、安装。能够先一次性下载完须要用到的源代码。

X264: ftp://ftp.videolan.org/pub/videolan/x264/snapshots/

FFMPEG: http://ffmpeg.org/download.html

V4L:www.linuxtv.org/downloads/v4l-utils/  
OpenCV:http://opencv.org/

1、安装必要的project构建程序

在终端中运行下面命令:

sudo apt-get install g++ gfortran gdb cgdb checkinstall cmake build-essential

假设遇到“do you want to continue?”时,输入Y。敲击回车。

2、安装gstreamer

在终端中运行例如以下命令:

sudo apt-get install libgstreamer0.10-0 libgstreamer0.10-dev gstreamer0.10-tools gstreamer0.10-plugins-base libgstreamer-plugins-base0.10-dev gstreamer0.10-plugins-good gstreamer0.10-plugins-ugly gstreamer0.10-plugins-bad  

假设遇到“do you want to continue?”时,输入Y,敲击回车。

3、删除系统上安装的不论什么ffmepg和x264

在终端中运行例如以下命令:

sudo apt-get remove ffmpeg x264 libx264-dev

4、为源代码安装ffmpeg和x264准备依赖库

在终端中运行例如以下命令:

sudo apt-get install git libfaac-dev libjack-jackd2-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libsdl1.2-dev libtheora-dev libva-dev libvdpau-dev libvorbis-dev libx11-dev libxfixes-dev libxvidcore-dev texi2html yasm zlib1g-dev libjpeg8 libjpeg8-dev

假设遇到“do you want to continue?”时,输入Y,敲击回车。

5、安装最新的x264

下载最新x264的源代码,下载地址:ftp://ftp.videolan.org/pub/videolan/x264/snapshots/

假设也能够直接运行例如以下命令:

wget ftp://ftp.videolan.org/pub/videolan/x264/snapshots/last_stable_x264.tar.bz2

假设上面的命令未能成功下载的话,必须用那个链接去手动下载。

将下载的文件解压,进入解压后的文件夹,运行例如以下命令:

./configure --enable-shared --enable-pic

运行例如以下命令,完毕编译:

make

编译完毕后,运行例如以下命令。完毕安装:

sudo make install

6、安装最新的ffmpeg

下载最新的ffmpeg源代码,下载地址:http://ffmpeg.org/download.html

将下载的源代码解压。进入解压文件夹,运行例如以下命令:

./configure --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-nonfree --enable-postproc --enable-version3 --enable-x11grab --enable-shared --enable-pic

假设运行成功,运行例如以下命令,进行编译:

make

待编译完毕后,运行例如以下命令,安装:

sudo make install 

7、安装v4l

下载最新的v4l,下载地址:www.linuxtv.org/downloads/v4l-utils/

下载完毕后,解压源代码压缩包,进入解压文件夹。运行例如以下命令:

./configure ; make ; sudo make install

注意最后要输入password,假设不提醒输入password,就算了。

8、安装cmake-curses-gui

运行例如以下命令:

sudo apt-get install cmake-curses-gui

9、安装gnome-core-devel

运行例如以下命令:

sudo apt-get install gnome-core-devel

10、安装OpenCV

下载最新的OpenCV源代码,下载地址:http://opencv.org/

下载后,解压压缩包(unzip)。进入解压文件夹,运行例如以下命令以创建build文件夹

mkdir build; cd build; ccmake ../

运行完上述命令后。会出现ccmake的界面,然后在键盘上按下c键,然后ccmake就会去查看你的编译环境的。

等cmake检查完后。依据出现的内容,选择合适的选项,比方假设你没有cuda或者opencl的话,能够将与这些信息有关的项都设置成off。

建议下面项保持为ON

BUILD_DOCS
BUILD_EXAMPLES
INSTALL_C_EXAMPLES
WITH_GSTREAMER
WITH_JPEG
WITH_GTK
WITH_PNG
WITH_FFMPEG
WITH_V4L

设置完毕后,敲击键盘上的g键,待cmake退出后,运行以下的命令以完毕编译:

make

这个编译过程可能须要一段时间,耐心等待一会,你能够用这段时间看看书,喝点水。

待编译完毕后,最后一个命令:

sudo make install

总结

编译安装OpenCV可能会花不少时间。各位一定要耐心点。

网络假设比較差,能够先提前把须要的代码都下载下来。不幸的是,至于依赖项的安装是不得不(或者说非常难做到)不须要网络的,这个过程假设须要的时间太常的话,仅仅能在下载和安装的过程中,多看点书,多喝点水了。:(

linux源代码编译安装OpenCV的更多相关文章

  1. SUSE Linux源代码编译安装MySQL 5.6

    这篇文章主要介绍了SUSE Linux下源代码编译方式安装MySQL 5.6过程分享,本文使用SUSE Linux Enterprise Server 10 SP3 (x86_64)系统,须要的朋友能 ...

  2. Linux 下编译安装OpenCV【转】

    转自:http://www.cnblogs.com/emouse/archive/2013/02/22/2922940.html OpenCV 2.2以后版本需要使用Cmake生成makefile文件 ...

  3. Linux 下编译安装OpenCV(zhuanzai)

    http://www.cnblogs.com/emouse/archive/2013/02/22/2922940.html Cmake的安装 OpenCV 2.2以后版本需要使用Cmake生成make ...

  4. Linux源代码编译安装tree命令

    wget ftp://mama.indstate.edu/linux/tree/tree-1.6.0.tgz .tgz cd tree- make && make install

  5. linux源码编译安装OpenCV

    为了尽可能保证OpenCV的特性,使用OpenCV源码编译安装在linux上.先从安装其依赖项开始,以ubuntu 14.04.X为例讲解在Linux上源码编译安装OpenCV,其他linux版本可以 ...

  6. Linux编译安装opencv

    参考https://blog.csdn.net/huang826336127/article/details/78760885 一.下载opencv源码包 下载地址:https://opencv.or ...

  7. Linux 环境中从源代码编译安装 ReText 问题与解决

    从源代码编译安装 ReText 问题与解决 1. 如何安装 Python Markups 1.1 从 https://launchpad.net/python-markups 下载 Python Ma ...

  8. 在Ubuntu 16.04 LTS下编译安装OpenCV 4.1.1

    目录 一 安装前的准备 二 编译并安装OpenCV 4.1.1 注:原创不易,转载请务必注明原作者和出处,感谢支持! OpenCV目前(2019-8-1)的最新版本为4.1.1.本文将介绍如何在Ubu ...

  9. 源代码编译安装Python3.5.2

    由于没有找到Python3.5的rpm安装包,因此进行源代码编译安装 1.下载Python3.5.2 [root@seastar ~]# cd /usr/local/src [root@seastar ...

随机推荐

  1. BPMN2.0 规范

    1 启动事件 每个流程总是以启动事件作为入口,启动事件在BPMN2.0 中以细线圆圈表示.分为三种类型 空启动事件 定时启动事件 异常启动事件 消息启动事件 启动事件都是等待第三方触发才可以启动. 定 ...

  2. 【转】Ubuntu VI基本用法

    转自:http://blog.sina.com.cn/s/blog_4f3b79d0010166ai.html 1.vi的基本概念 基本上vi可以分为三种状态,分别是命令模式(command mode ...

  3. 在Nodejs中贯彻单元测试

    在团队合作中,你写好了一个函数,供队友使用,跑去跟你的队友说,你传个A值进去,他就会返回B结果了.过了一会,你队友跑过来说,我传个A值却返回C结果,怎么回事?你丫的有没有测试过啊? 大家一起写个项目, ...

  4. 【Android】4.1 UI设计器

    分类:C#.Android.VS2015:创建日期:2016-02-06 开发人员可以用以下两种方式声明UI:一是通过.xml文件(不带预览界面)或者.axml文件(带预览界面)来描述:二是用C#代码 ...

  5. android笔记-----消息提示

    在/res/values目录下的文件中定义要显示的字符串,主要是考虑到后期可能需要换成英文之类的 <string name="login_checkBlank">用户名 ...

  6. WebDriver 原理

    注:学会根据执行顺序看底层代码 <以下内容摘自大师兄博客> WebDriver webdriver是按照server – client的经典设计模式设计的. webdriver的作用就是创 ...

  7. uniqueIdentifier在ios7不支持后的替代方法

    UIDevice的uniqueIdentifier方法在ios7就不支持了, 为了获得设备相关的唯一标识符, 参考了这里:https://github.com/Itayber/UIDevice-uni ...

  8. 【NOI】9272 偶数个三

    题目 链接:bajdcc/ACM 描述 在所有的N位数中,有多少个数中有偶数个数字3?结果模12345.(1<=N<=10000) 样例输入 2 样例输出 73 方法一:穷举 评价:最简单 ...

  9. springmvc集成Freemarke配置的几点

    项目结构图 废话不多说, 集成步骤: 1.web.xml  spring-mvc配置 <?xml version="1.0" encoding="UTF-8&quo ...

  10. 【C++程序员学 python】python 之变量

    既然学过C++,那么就应该知道变量是什么,常量是什么. python 相比于C++,在使用变量之前不用先声明. 而是直接使用,python 会根据你的变量自动识别其类型. 假如a = 123 那么a ...