配置环境

操作系统 Ubuntu 12.04

OpenCV版本 opencv-1.0.0

学习书籍 《学习OpenCV》

Liunx软件安装方法主要有3种:

1.编译安装,也就是通过编译源代码来安装,需要配置编译源代码的环境来编译源代码

2.apt-get/yum 软件源安装,通过网络的软件源来进行安装,会自动下载相关软件源

3.deb/rpm 安装包来安装,可以通过下载安装包来进行离线安装,有时会需要下载相关软件包

Ubuntu下OpenCV的apt-get安装方法

1.apt-get update   更新软件源

2.apt-cache search opencv  搜索opencv相关的软件源,学习opencv-1.0.0版本需要安装如下的软件源:

libcv-dev - development files for libcv

libcv - computer vision library

libcvaux-dev - development files for libcvaux

libcvaux - computer vision extension library

libhighgui-dev - development files for libhighgui

libhighgui - computer vision GUI library

3.apt-get install libcv libcvaux libhighgui

支持OpenCV的动态运行库,会根据版本号有所不同,安装最新版本即可

4.apt-get install libcv-dev libcvaux-dev libhighgui-dev

开发相关的工具包,直接安装即可

5.g++ test.c `pkg-config opencv --libs --cflags` -o test   测试是否能编译opencv编写的程序。需要注意的是test.c需要在`pkg-config opencv --cflags --libs`前面,否则会找不到头文件

6.vim Makefile   编写Makefile文件来简化编译过程

CFLAGS = `pkg-config --cflags opencv`
LIBS = `pkg-config --libs opencv` % : %.c
g++ $^ $(CFLAGS) $(LIBS) -o $@
% : %.cpp
g++ $^ $(CFLAGS) $(LIBS) -o $@

说明:

1.gcc和g++的区别:

但在编译阶段,g++会自动调用gcc,但gcc命令不能自动和c++程序使用的库链接,所以在链接c++程序时需要用g++。对于编译链接c程序,gcc和g++是等价的,但在编译链接c++程序时需要用g++。

2.`pkg-config opencv --libs --cflags`

在/lib和/usr/lib和/usr/local/lib里有许多相关的头文件和库文件,可以通过-l和-L命令在编译时来引用放在这些目录下的头文件和库文件。当引用的文件很多时,可以使用生成链接参数的程序xxx-config,一般放在/usr/bin目录下。在编译链接程序时直接加上`xxx-config opencv --cflags --libs`就可以引用相关的头文件和库文件了。需要注意的是`不是单引号而是1键左边的那个符号,引用要放在源文件后面否则会产生找不到函数的错误。--cflags表示引用xxx-config配置文件中的头文件,--libs表示引用xxx-config配置文件中的库文件

OpenCV forever,开始享受OpenCV吧!

参考:

1.http://wiki.opencv.org.cn/index.php/Debian%E4%B8%8B%E5%AE%89%E8%A3%85

2.http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/introduction/linux_install/linux_install.html#linux-installation

3.http://stackoverflow.com/questions/9870297/makefile-to-compile-opencv-code-in-c-on-ubuntu-linux

[学习OpenCV攻略][002][Ubuntu下OpenCV安装]的更多相关文章

  1. [学习OpenCV攻略][017][ARM9下移植OpenCV]

    安装环境 宿主机: Red Hat Enterprise Linux Server 6.3 开发板: mini2440 相关软件: cmake-3.5.1.tar.gz.OpenCV-2.3.1a.t ...

  2. [学习OpenCV攻略][016][RedHat下安装OpenCV]

    安装环境 操作系统: Red Hat Enterprise Linux Server 6.3 相关软件: ffmpeg-0.8.15.tar.bz2.cmake-3.5.1.tar.gz.OpenCV ...

  3. [学习OpenCV攻略][001][Ubuntu安装及配置]

    root登入配置 1.sudo passwd root 2.su - root 3.vim /etc/lightdm/lightdm.conf [SeatDefaults] user-session= ...

  4. OpenCV学习系列(一) Mac下OpenCV + xcode人脸检测实现

    # OpenCV学习系列(一) Mac下OpenCV + xcode人脸检测实现 [-= 博客目录 =-] 1-学习目标 1.1-本章介绍 1.2-实践内容 1.3-相关说明 2-学习过程 2.1-环 ...

  5. 基于opencv网络摄像头在ubuntu下的视频获取

     基于opencv网络摄像头在ubuntu下的视频获取 1  工具 原料 平台 :UBUNTU12.04 安装库  Opencv-2.3 2  安装编译运行步骤 安装编译opencv-2.3  参 ...

  6. Ubuntu下OpenCV不能被某个python版本识别

    Ubuntu下OpenCV不能被某个python版本识别 Solution: 可以进入相应版本的python,查看该python的path: python import sys print(sys.p ...

  7. Ubuntu下opencv的安装及IDEA开发配置

    Ubuntu下opencv的安装及IDEA开发配置 环境配置  这篇博客主要介绍Ubuntu下opencv的安装编译,以及IDEA对opencv进行Java开发的环境配置 安装opencv 首先安装o ...

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

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

  9. Torch7在Ubuntu下的安装与配置

    Torch7的本系列教程的主要目的是介绍Torch的入门使用.今天首先分享一下Torch7的安装.(在Ubuntu14.04安装torch7) 为什么选择Torch Torch的目标是在建立科学算法的 ...

随机推荐

  1. Docker(四):Docker基本网络配置

    1.Libnetwork Libnetwork提出了新的容器网络模型简称为CNM,定义了标准的API用于为容器配置网络. CNM三个重要概念: 沙盒:一个隔离的网络运行环境,保存了容器网络栈的配置,包 ...

  2. userdel 命令详解

    userdel  作用: 删除指定用户,以及用户相关的文件. 如不加选项,则仅删除用户账号,而不删除相关文件 选项: -f:强制删除用户,即时用户当前已登录 -r:删除用户的同时删除与用户相关的所有文 ...

  3. rmdir 命令详解

    rmdir  作用:  用来删除空目录, 当目录不再被使用时, 或者磁盘空间已达到使用限定值, 就需要删除失去价值的目录. 利用rmdir 命令可以从一个目录中删除一个或多个空的子目录. 该命令从一个 ...

  4. ProjectA: 多元非线性回归

    https://www.youtube.com/watch?v=n9XycstdPYs&t=907s

  5. vivado hls(1)

    笔记 1.vivado  hls是fpga高级综合工具,可以将C语言转换成verilog代码,适合编写算法,但是要有硬件思想. 2.软核就是只要资源足够,就可以用逻辑打一个CPU出来,与硬核不一样,硬 ...

  6. Struts2-整理笔记(二)常量配置、动态方法调用、Action类详解

    1.修改struts2常量配置(3种) 第一种 在str/struts.xml中添加constant标签 <struts> <!-- 如果使用使用动态方法调用和include冲突 - ...

  7. MSSQLSERVER并行度

    Microsoft SQL Server最大并行度(MAXDOP) 配置选项控制并行计划用于执行查询的处理器的数目.此选项确定用于执行工作并行查询计划运算符的计算和线程资源.根据是否 SQL Serv ...

  8. JavaScript Dom入门

    好像代码太杂了,博客园里跑不起来,单独复制到html中本地测试都是没有问题的. JavaScript JavaScript 是属于 web 的语言,它适用于 PC.笔记本电脑.平板电脑和移动电话. J ...

  9. GBK,UNICODE,GB2312,UTF-8学习总结

    转自http://www.cnblogs.com/pannengzhi/p/5678495.html UNICODE,GBK,UTF-8区别 前言 其实这是个老生常谈的问题了,相信大家在第一次遇到Un ...

  10. JavaScript图片库(简单的应用案例)

    这个图片库小例子的效果如图所示,点击网页上某个图片链接时你将看到两种效果:占位符图片呗替换成这个链接所指向的图片,同时描述性文字也被替换为这个链接的title属性值.     利用一个简单的图片库应用 ...