Opencv Linux环境搭建
注:此篇博客最后没有在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环境搭建的更多相关文章
- Opencv Linux环境搭建(2)
继上次ubuntu10.04搭建失败之后,这次又换了一个系统. 拿出之前闲置的笔记本,安装了ubuntu12.04,按照这里的教程开始搞起来: http://www.linuxidc.com/Linu ...
- 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- ...
- Linux环境搭建-在虚拟机中安装Centos7.0
最近在空闲时间学习Linux环境中各种服务的安装与配置,都属于入门级别的,这里把所有的学习过程记录下来,和大家一起分享. 我的电脑系统是win7,所以我需要在win7上安装一个虚拟机-VMware,然 ...
- Android下OpenCV的环境搭建
目录(?)[-] 前言 系统环境 相关工具 Android ADT环境搭建 Android SDK环境变量的配置 Android NDK的安装与配置 OpenCV for Android 环境搭建 基 ...
- 【菜鸟学习Linux】-第三章- Linux环境搭建-使用VMware9安装Ubuntu 12.04系统
上一步,我们安装了VMware9虚拟机,现在我们就是用它来安装Ubuntu12.04系统,至于Ubuntu是什么,我就不废话了,大家google一下,比我讲的清楚,好了,开始干活! Ubuntu官网下 ...
- win10 + VS2010 + OpenCV2.4.10重编译OpenCV开发环境搭建
win10 + VS2010 + OpenCV2.4.10重编译OpenCV开发环境搭建 重编译的优点:能够调试的时候看OpenCV的源码. 重编译要得到的东西:Debug版本号和Release版本号 ...
- OpenCV学习系列(零) Mac下OpenCV + xcode环境搭建
# OpenCV学习系列(零) Mac下OpenCV + xcode环境搭建 [-= 博客目录 =-] 1-学习目标 1.1-本章介绍 1.2-实践内容 1.3-相关说明 2-学习过程 2.1-hom ...
- IntelliJ OpenCV 开发环境搭建
Windows下的IntelliJ + OpenCV开发环境搭建 基于IntelliJ IDEA 15 和 OpenCV 3.1.0 1. 在OpenCV官网下载OpenCV安装程序,双击解压到目标目 ...
- Windows及Linux环境搭建Redis集群
一.Windows环境搭建Redis集群 参考资料:Windows 环境搭建Redis集群 二.Linux环境搭建Redis集群 参考资料:Redis Cluster的搭建与部署,实现redis的分布 ...
随机推荐
- Effective Java 26 Favor generic types
Use generic types to replace the object declaration Add one or more type parameters to its declarati ...
- Java锁(一)之内存模型
想要了解Java锁机制.引发的线程安全问题以及数据一致性问题,有必要了解内存模型,机理机制了解清楚了,这些问题也就应声而解了. 一.主内存和工作内存 Java内存模型分为主内存和工作内存,所有的变量都 ...
- Maven使用笔记,错误Failure to Transfer后处理
当有未更新成功的项,M3会以后缀为.lastUpdated保存未更新成功的项 执行下面的操作可清楚这些项 Unixfind ~/.m2 -name "*.lastUpdated" ...
- C++ pair用法
Pair类型概述 pair是一种模板类型,其中包含两个数据值,两个数据的类型可以不同 1.定义(构造): 1 pair<int, double> p1; //使用默认构造函数 2 pair ...
- django中的站点管理
所谓网页开发是有趣的,管理界面是千篇一律的.所以就有了django自动管理界面来减少重复劳动. 一.激活管理界面 1.django.contrib包 django自带了很多优秀的附加组件,它们都存在于 ...
- [转][ASP.NET MVC 小牛之路]12 - Section、Partial View 和 Child Action
本文转自:http://www.cnblogs.com/willick/p/3410855.html 概括的讲,View中的内容可以分为静态和动态两部分.静态内容一般是html元素,而动态内容指的是在 ...
- 如何在nopcommerce3.3注册页面添加密码强度检查仪?
我刚刚完成了nopCommerce注册页面的密码强度检查仪,因为我觉得在电子商务交易平台,安全问题是非常重要的.在注册页面有必要添加一个密码强度检测仪,以便通知用户他们的密码是否足够强大.今天,大多数 ...
- 《TCP/IP详解 卷一》读书笔记-----动态路由协议
1.以下条件只要有一个不满足,则需要使用动态路由协议:1)网络规模小,2)只有一个连接点用于连接其他网络,3)没有冗余的路由器(一般用作备份) 2.所谓动态路由就是各个路由器与自己相邻的路由器交换各自 ...
- POJ 2263 Heavy Cargo 多种解法
好题.这题可以有三种解法:1.Dijkstra 2.优先队列 3.并查集 我这里是优先队列的实现,以后有时间再用另两种方法做做..方法就是每次都选当前节点所连的权值最大的边,然后BFS搜索. ...
- ZooKeeper一二事 - 搭建ZooKeeper伪分布式及正式集群 提供集群服务
集群真是好好玩,最近一段时间天天搞集群,redis缓存服务集群啦,solr搜索服务集群啦,,,巴拉巴拉 今天说说zookeeper,之前搭建了一个redis集群,用了6台机子,有些朋友电脑跑步起来,有 ...