注:此篇博客最后没有在linux搭建成功Opencv,请移步:http://blog.csdn.net/tanhngbo/article/details/40403885

来查看成功的搭建。

另外,这里是成功在windows里面搭建的效果:http://blog.csdn.net/tanhngbo/article/details/40319805

在windows下面搞opencv太蛋疼了,这次在linux(ubuntu 10.04)搭建一把。

千辛万苦完全卸载了残留的vmware,又千辛万苦装上了vmware-tools

接下来按照官网的教程来看看:

http://docs.opencv.org/trunk/doc/tutorials/introduction/linux_install/linux_install.html

先装上这些软件:

[compiler] sudo apt-get install build-essential
[required] sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
[optional] sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

这里网速太慢,感觉要好久。

git装不上去,后来改成了git-core就可以了

接下来使用

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

发现cmake版本太旧,于是从官网下载:http://www.cmake.org/download/

我偷懒,下载了binary:cmake-3.0.2-Linux-i386.tar.gz

然后将解压出来的拷贝到/usr 里面

然后接下来可以build了。

CMake Error at 3rdparty/ippicv/downloader.cmake:75 (message):

  ICV: Failed to download ICV package: ippicv_linux_20140513.tgz.

  Status=6;"couldn't resolve host name"

真是桑不起啊,这里有人回复:

http://answers.opencv.org/question/40425/opencv-build-fails-because-i-cannot-download-icv/

先偷懒,屏蔽它吧。

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local  -D WITH_IPP=OFF ..

接下来使用:

make -j8 

蛤蛤,终于看到编译画面了。

/home/tan/Desktop/opencv-3.0.0-alpha/modules/core/src/ocl.cpp: In member function ‘void cv::ocl::Image2D::Impl::init(const cv::UMat&, bool, bool)’:

/home/tan/Desktop/opencv-3.0.0-alpha/modules/core/src/ocl.cpp:4635: error: #pragma GCC diagnostic not allowed inside functions

/home/tan/Desktop/opencv-3.0.0-alpha/modules/core/src/ocl.cpp:4635: error: #pragma GCC diagnostic not allowed inside functions

/home/tan/Desktop/opencv-3.0.0-alpha/modules/core/src/ocl.cpp:4638: error: #pragma GCC diagnostic not allowed inside functions

make[2]: *** [modules/core/CMakeFiles/opencv_core.dir/src/ocl.cpp.o] Error 1

make[2]: *** Waiting for unfinished jobs....

make[1]: *** [modules/core/CMakeFiles/opencv_core.dir/all] Error 2

make: *** [all] Error 2

看起来是gcc太旧了。

找到一个mirror:

http://mirrors-ru.go-parts.com/gcc/releases/gcc-4.9.1/

从里面下载最新的gcc。

有吓人的110MB,不管了,先下着吧。

下载完gcc,编译的时候发现:

configure: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+.

这下又得坑好久,于是准备换一个opencv版本。

又上官网抓了一个opecv 2.4.9版本,这下应该好点了吧!

再不行的话我再搞个旧版本的。

果然给力啊,这次直接使用

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

就可以编译了!

我现在的配置是CMAKE更新到了3.0.2,gcc没有更新,是4.4.3版本

这下又出问题啦!

error: ‘avformat_free_context’ was not declared in this scope

http://answers.opencv.org/question/32801/unresoved-avformat_free_context-was-not-declared/

这里显示是ffmpeg版本太旧的原因。我发现我的机器上根本没装。

sudo apt-get install ffmpeg

好像装出问题了,网连不上。原来是桥接的问题,之前用NAT连不上,只得用桥接。

随即下载ffmpeg-1.2.9.tar.gz,使用

./configure --disable-yasm

make -j4

sudo make install

安装好了。

接下来再编译opencv又失败了,一大串trace信息,算了,重新安装ubuntu 12.04试试看吧

Opencv Linux环境搭建的更多相关文章

  1. Opencv Linux环境搭建(2)

    继上次ubuntu10.04搭建失败之后,这次又换了一个系统. 拿出之前闲置的笔记本,安装了ubuntu12.04,按照这里的教程开始搞起来: http://www.linuxidc.com/Linu ...

  2. Zynq7000开发系列-5(OpenCV开发环境搭建:Ubuntu、Zynq)

    操作系统:Ubuntu14.04.5 LTS 64bit OpenCV:OpenCV 3.1.0.opencv_contrib gcc:gcc version 4.8.4 (Ubuntu 4.8.4- ...

  3. Linux环境搭建-在虚拟机中安装Centos7.0

    最近在空闲时间学习Linux环境中各种服务的安装与配置,都属于入门级别的,这里把所有的学习过程记录下来,和大家一起分享. 我的电脑系统是win7,所以我需要在win7上安装一个虚拟机-VMware,然 ...

  4. Android下OpenCV的环境搭建

    目录(?)[-] 前言 系统环境 相关工具 Android ADT环境搭建 Android SDK环境变量的配置 Android NDK的安装与配置 OpenCV for Android 环境搭建 基 ...

  5. 【菜鸟学习Linux】-第三章- Linux环境搭建-使用VMware9安装Ubuntu 12.04系统

    上一步,我们安装了VMware9虚拟机,现在我们就是用它来安装Ubuntu12.04系统,至于Ubuntu是什么,我就不废话了,大家google一下,比我讲的清楚,好了,开始干活! Ubuntu官网下 ...

  6. win10 + VS2010 + OpenCV2.4.10重编译OpenCV开发环境搭建

    win10 + VS2010 + OpenCV2.4.10重编译OpenCV开发环境搭建 重编译的优点:能够调试的时候看OpenCV的源码. 重编译要得到的东西:Debug版本号和Release版本号 ...

  7. OpenCV学习系列(零) Mac下OpenCV + xcode环境搭建

    # OpenCV学习系列(零) Mac下OpenCV + xcode环境搭建 [-= 博客目录 =-] 1-学习目标 1.1-本章介绍 1.2-实践内容 1.3-相关说明 2-学习过程 2.1-hom ...

  8. IntelliJ OpenCV 开发环境搭建

    Windows下的IntelliJ + OpenCV开发环境搭建 基于IntelliJ IDEA 15 和 OpenCV 3.1.0 1. 在OpenCV官网下载OpenCV安装程序,双击解压到目标目 ...

  9. Windows及Linux环境搭建Redis集群

    一.Windows环境搭建Redis集群 参考资料:Windows 环境搭建Redis集群 二.Linux环境搭建Redis集群 参考资料:Redis Cluster的搭建与部署,实现redis的分布 ...

随机推荐

  1. linux下批量修改存有超大数据量IP文件中的IP内容以及去重排序

    作为一个linux的学徒,分享一下自己解决这个小问题的心得,在处理这个问题时使用了一个小技巧感觉很适用,个人发觉linux的终端真滴是非常强大,下面就详细地介绍这个问题以及解决办法吧 问题描述:由于要 ...

  2. c#注册表对象映射

    用于快捷保存与读取注册表,为对应的对象 示例 [RegistryRoot(Name = "superAcxxxxx")] public class Abc : IRegistry ...

  3. spring提供的解决中文乱码方案

    在表单提交时,如果遇到中文符号会出现乱码问题. Spring提供一个CharacterEncodingFilter过滤器,可用于解决乱码问题. CharacterEncodingFilter使用的时候 ...

  4. 烂泥:LVM学习之KVM利用LVM快照备份与恢复虚拟机

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 最近一段时间一直在学习有关LVM逻辑卷方面的知识,前几篇文章介绍了有关LVM的逻辑卷的基本相关知识,包括逻辑卷及卷组的扩容与缩小.今天我们再来介绍LVM ...

  5. Ubuntu升级内核

    看到微软开源.兼容.豁达,很高兴,今天研究一下Docker,查看Ubuntu内核版本,发现2.3有点低,不符合当前版本. 最低内核版本要求3.10. 升级Ubuntu内核. 首先 下载内核 网站htt ...

  6. Java实现事件机制

    java中的事件机制的参与者有3种角色: 1.event object:事件状态对象,用于listener的相应的方法之中,作为参数,一般存在与listerner的方法之中 2.event sourc ...

  7. mysql 防止update/delete误操作

    身为一php开发攻城狮,常常涉及在应用中写update/delete语句,忘记加where,后果不堪设想. 还会出现在cml下直接操作mysql的情况,如果mysql 权限够大,一个update/de ...

  8. C. Coloring Trees DP

    传送门:http://codeforces.com/problemset/problem/711/C 题目: C. Coloring Trees time limit per test 2 secon ...

  9. UESTC 913 握手 Havel定理+优先队列

    给定一个非负整数序列{dn},若存在一个无向图使得图中各点的度与此序列一一对应,则称此序列可图化.进一步,若图为简单图,则称此序列可简单图化. 此题因为是无自环无重边,所以是简单图.用判定简单图可图化 ...

  10. mantis安装

    curl -O http://jaist.dl.sourceforge.net/project/mantisbt/mantis-stable/1.2.19/mantisbt-1.2.19.tar.gz ...