参考 http://blog.sina.com.cn/s/blog_53b0956801010lfu.html

捣鼓了一个晚上了,OpenCv还没装好,本来以为看个类似的比如Ubuntu安装OpenCv2.2或者其他的就能安装好,结果发现...我太天真了。

网上使用Ubuntu12.04来装OpenCv还是挺多的,各种版本组合教程,都没能把我的Ubuntu12.04+OpenCv2.4.10 成功合体。

------------------------------------------------------------

建议不要用2.4.10,使用2.4.9就可以了。

灰心之极到OpenCv官网想下载个OpenCv2.4.0发现没有....

只好假装屡败屡战了。

  

  

  回到刚刚的现实...

以下是步骤:

  

一、更新软件列表,升级
sudo apt-get update
sudo apt-get upgrade

二、安装依赖包
sudo
apt-get install build-essential libgtk2.0-dev libjpeg-dev libtiff4-dev
libjasper-dev libopenexr-dev cmake python-dev python-numpy python-tk libtbb-dev
libeigen2-dev yasm libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev
libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev libqt4-dev
libqt4-opengl-dev sphinx-common texlive-latex-extra libv4l-dev libdc1394-22-dev
libavcodec-dev libavformat-dev libswscale-dev

下载opencv安装包

http://sourceforge.net/projects/opencvlibrary

最新版本已经到3.0了!!!  可是关我什么事....

三、解压
tar xvzf opencv-2.4.10.tar.bz2
cd opencv-2.4.10

四、创建编译目录
mkdir
build
cd build

cmake生成make文件
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
..
检查输出:不能有error;FFMPEG : YES;Python, TBB, OpenGL, V4L, OpenGL and Qt are
detected。如果有问题要重新安装对应的包再cmake

五、编译(需要很长时间)
make

到了这一步就卡住了,输出错误

 make
[  0%] Generating opencv_core_pch_dephelp.cxx
Scanning dependencies of target opencv_core_pch_dephelp
[  0%] Building CXX object modules/core/CMakeFiles/opencv_core_pch_dephelp.dir/opencv_core_pch_dephelp.cxx.o
Linking CXX static library ../../lib/libopencv_core_pch_dephelp.a
[  0%] Built target opencv_core_pch_dephelp
Scanning dependencies of target pch_Generate_opencv_core
[  0%] Generating precomp.hpp
[  0%] Generating precomp.hpp.gch/opencv_core_Release.gch
[  0%] Built target pch_Generate_opencv_core
Scanning dependencies of target opencv_core
[  0%] Building CXX object modules/core/CMakeFiles/opencv_core.dir/src/system.cpp.o
/tmp/opencv-2.4.10/modules/core/src/system.cpp: In function ‘(static initializers for /tmp/opencv-2.4.10/modules/core/src/system.cpp)’:
/tmp/opencv-2.4.10/modules/core/src/system.cpp:280:10: error: inconsistent operand constraints in an ‘asm’
make[2]: *** [modules/core/CMakeFiles/opencv_core.dir/src/system.cpp.o] Error 1
make[1]: *** [modules/core/CMakeFiles/opencv_core.dir/all] Error 2
make: *** [all] Error 2

  在网上查找了一下错误信息,没什么收获...

  突然想研读一下这是个什么错误...看了半天觉得另寻出路吧。

继续寻找

  发现一篇不错的博文http://www.linuxidc.com/Linux/2014-04/100112.htm

  然后继续发现我少装了一个工具,于是

  sudo apt-get install cmake-curses-gui

  接下来是继续弄了

开始安装 将从官网下载的源码 opencv2.4.8.zip 复制到任意下,cd到该目录,执行

unzip opencv2.4.8.zip

cd opencv2.4.8

mkdir release

cd release  ccmake ../

进入ccmake后,按 c 就会弹出如下界面

把 BUILD_JPEG 和 BUILD_PNG 这两项改成了 ON ,其余全部都默认,键盘按c,然后按g,然后就回到命令行界面,

make

比上次多出了很多.o文件,然后很顺利的一直进行...

但是,

突然又出现

/tmp/opencv-2.4.10/modules/core/src/system.cpp: In function ‘(static initializers for /tmp/opencv-2.4.10/modules/core/src/system.cpp)’:
/tmp/opencv-2.4.10/modules/core/src/system.cpp:280:10: error: inconsistent operand constraints in an ‘asm’
make[2]: *** [modules/core/CMakeFiles/opencv_core.dir/src/system.cpp.o] Error 1
make[1]: *** [modules/core/CMakeFiles/opencv_core.dir/all] Error 2
make: *** [all] Error 2

  郁闷之极...

  未完待续。。。

更新-------------------------------------------------------2014年11月30日

上官网下载了个2.4.9的版本http://sourceforge.net/projects/opencvlibrary

嗯,重新安装了一遍发现OK了,按照第二个教程的步骤。

make

然后等了很久,无错误完成。

六、安装

sudo make install

完成!

七、设置一下环境变量

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

在这个新文件里插入opencv安装的路径 “/usr/local/lib”

sudo ldconfig

再测试一下

先重启电脑,然后

cd /home/own/opencv-2.4.8/samples/c (注意要进入的是你自己安装OpenCv的文件夹,也就是下载后解压出来的文件夹里面) 
./build_all.sh  
./find_obj

一切正常。

心得:

虽然没有从根本上解决问题,比如2.4.10还是没有安装成功,但是安装成功了2.4.9。

有时候解决问题的办法并不是死钻牛角尖,也可以是另辟蹊径而为之。

Linux Ubuntu12.04下安装OpenCv2.4.10的更多相关文章

  1. Linux (Ubuntu12.04) 下开发工具安装和使用

    Linux (Ubuntu12.04) 下开发工具安装和使用 这里讲述的是关于在ubuntu12.04下面安装和使用各种IDE 开发环境和初步使用的知识.说一下背景:很多的开发基本都是在linux操作 ...

  2. Ubuntu12.04下安装sourcenavigator-NG4.5阅读源代码

    大家知道Windows下有一个很好的查看源代码的软件sourceinsight,使用sourceinsight查看Linux内核代码.嵌入式软件开发中的C语言项目源代码.驱动程序代码很是方便.在Lin ...

  3. 阿里云ubuntu12.04下安装使用mongodb

    阿里云ubuntu12.04下安装mongodb   apt-get install mongodb 阿里云ubuntu12.04下卸载mongodb,同时删除配置文件     apt-get pur ...

  4. Ubuntu12.04下安装NS3.25

    实验室项目的需求,要使用到NS3做仿真,使用实验室的电脑,Ubuntu12.04,版本比较低,建议大家使用16.04,这样安装依赖文件时不会出现版本过低的问题 (没管最后也安装成功了).下面就安装步骤 ...

  5. UBUNTU12.04下安装配置体验gnome3

    年. ubuntu12.04默认采用unity界面,但是自己更加喜欢gnome3的操作方式. 安装gnome3: sudo apt-get install  gnome-shell 其实安装成功后,注 ...

  6. ubuntu-12.04下安装postgresql

    2013-10-01 20:42:57|    moniter参考资料:Ubuntu 12.04下PostgreSQL-9.1安装与配置详解(在线安装)一.安装postgresqlbamboo@bam ...

  7. Ubuntu12.04下安装Subversion并进行配置

    Ubuntu下安装Subversion还是很简单的,只要输入sudo apt-get install Subversion就可以安装了. 主要的难点在于对权限的配置上. 安装完subversion后, ...

  8. 【linux】——ubuntu12.04 下安装wine和wine乱码解决方案

    ————————安装最新ppa的wine———————— sudo add-apt-repository ppa:ubuntu-wine/ppa sudo apt-get update sudo ap ...

  9. linux REDHAT6.4下安装ArcGIS Server 10.1

    1 安装环境 因为Linux的发行版本比较多,我们在使用的时候请严格按照官网给的给出的版本,在官网上给出的是经过严格测试的,如果采用其他的,即便安装上了,在后续的运作中出现问题,这个可就麻烦了,官网对 ...

随机推荐

  1. Unity3D中以任意格式获取时间(C# .net也可用)

    最近楼主在开发中遇到了一个小问题 需要保存截图,同时把时间作为截图的名字存储 时间的保存格式为 2016-12-08 13:15:00 保存截图的流程就不说了,这篇博客只说一下以任意的格式保存时间. ...

  2. Java数据类型转换

    一.Date与String相互转换 1.Date转换成String SimpleDateFormat dd = new SimpleDateFormat("yyyy-MM-dd HH:mm& ...

  3. history对象的一些知识点

    history对象可以保存用户的上网的历史记录,即从窗口被打开的那一刻算起.这里有个比较纠结的问题,出于安全因素的考虑,开发人员无法得知用户浏览过的URL, 只能通过用户访问过的页面列表,实现后退和前 ...

  4. 2016 CCPC 合肥赛区 平行四边形//打铁记录..... 背锅还是我在行 此处@ctr 233

    也希望自己记住这些题并不是真的很难很难... 平行四边形... 这个题要两个直线上的两个点和给出点中的两个点组成的平行四边形面积最大. 确定两个点后,发现线上的点随之确定.那么我们解出线上的点 然后求 ...

  5. Spring事务管理(转)

    1 初步理解 理解事务之前,先讲一个你日常生活中最常干的事:取钱. 比如你去ATM机取1000块钱,大体有两个步骤:首先输入密码金额,银行卡扣掉1000元钱:然后ATM出1000元钱.这两个步骤必须是 ...

  6. python函数动态参数详解

    Python的动态参数: 1,参数前一个"*":在函数中会把传的参数转成一个元组. def func (*args): print(args) func(123,1,2,'a') ...

  7. android之ViewFlipper

    xml文件 activity-main.xml <ViewFlipper xmlns:android="http://schemas.android.com/apk/res/andro ...

  8. workflow GetListIdByName 获取表名

    1.Assign   获取表的地址 和表名 2.HttpsendWithSuspend==HttpSend 3.ParseDynamicValue 4.GetDynamicValuePropertie ...

  9. [OSI]网络间通信流程

    PC 连接交换机A,组成内网.DNS Serv 和 Web Serv 连接交换机B 组成外网. 示意图: 内网通信 PC1 到 PC2: PC1 发送的数据先到交换机A,交换机A没有ARP地址缓存表, ...

  10. BLE资料应用笔记 -- 持续更新

    BLE资料应用笔记 -- 持续更新 BLE 应用笔记 小书匠 简而言之,蓝牙无处不在,易于使用,低耗能和低使用成本.'让我们'更深入地探索这些方面吧. 蓝牙无处不在-,您可以在几乎每一台电话.笔记本电 ...