[学习OpenCV攻略][002][Ubuntu下OpenCV安装]
配置环境
操作系统 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安装]的更多相关文章
- [学习OpenCV攻略][017][ARM9下移植OpenCV]
安装环境 宿主机: Red Hat Enterprise Linux Server 6.3 开发板: mini2440 相关软件: cmake-3.5.1.tar.gz.OpenCV-2.3.1a.t ...
- [学习OpenCV攻略][016][RedHat下安装OpenCV]
安装环境 操作系统: Red Hat Enterprise Linux Server 6.3 相关软件: ffmpeg-0.8.15.tar.bz2.cmake-3.5.1.tar.gz.OpenCV ...
- [学习OpenCV攻略][001][Ubuntu安装及配置]
root登入配置 1.sudo passwd root 2.su - root 3.vim /etc/lightdm/lightdm.conf [SeatDefaults] user-session= ...
- OpenCV学习系列(一) Mac下OpenCV + xcode人脸检测实现
# OpenCV学习系列(一) Mac下OpenCV + xcode人脸检测实现 [-= 博客目录 =-] 1-学习目标 1.1-本章介绍 1.2-实践内容 1.3-相关说明 2-学习过程 2.1-环 ...
- 基于opencv网络摄像头在ubuntu下的视频获取
基于opencv网络摄像头在ubuntu下的视频获取 1 工具 原料 平台 :UBUNTU12.04 安装库 Opencv-2.3 2 安装编译运行步骤 安装编译opencv-2.3 参 ...
- Ubuntu下OpenCV不能被某个python版本识别
Ubuntu下OpenCV不能被某个python版本识别 Solution: 可以进入相应版本的python,查看该python的path: python import sys print(sys.p ...
- Ubuntu下opencv的安装及IDEA开发配置
Ubuntu下opencv的安装及IDEA开发配置 环境配置 这篇博客主要介绍Ubuntu下opencv的安装编译,以及IDEA对opencv进行Java开发的环境配置 安装opencv 首先安装o ...
- OpenCV学习系列(零) Mac下OpenCV + xcode环境搭建
# OpenCV学习系列(零) Mac下OpenCV + xcode环境搭建 [-= 博客目录 =-] 1-学习目标 1.1-本章介绍 1.2-实践内容 1.3-相关说明 2-学习过程 2.1-hom ...
- Torch7在Ubuntu下的安装与配置
Torch7的本系列教程的主要目的是介绍Torch的入门使用.今天首先分享一下Torch7的安装.(在Ubuntu14.04安装torch7) 为什么选择Torch Torch的目标是在建立科学算法的 ...
随机推荐
- ubuntu12.04destdrop删除不必要的软件
sudo apt-get -y --auto-remove purge unity unity-2d* sudo apt-get -y purge empathy sudo apt-get -y ...
- 用js筛选数据排序
题目 参考以下示例代码,页面加载后,将提供的空气质量数据数组,按照某种逻辑(比如空气质量大于60)进行过滤筛选,最后将符合条件的数据按照一定的格式要求显示 <!DOCTYPE html> ...
- ioutil包二
ioutil包二 (原创随笔,转载请注明出处 http://www.cnblogs.com/majianguo/p/8016426.html) ioutil包实现了一些I/O实用功能,导出了7个函数和 ...
- 类的更新----MVC设计模式
<?php class stdObject { public function __construct(array $arguments = array()) { if (!empty($arg ...
- 表单Checkbox全选反选全不选
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Asp.net IIS Express 无法启动 解决办法
http://www.mamicode.com/info-detail-1893424.html 一 .其他项目都可以,就这么一个不行 用记事本或者其他什么文本编辑器,打开项目的.csproj文件,定 ...
- 【JDK1.8】JDK1.8集合源码阅读——LinkedList
一.前言 这次我们来看一下常见的List中的第二个--LinkedList,在前面分析ArrayList的时候,我们提到,LinkedList是链表的结构,其实它跟我们在分析map的时候讲到的Link ...
- 微服务时代TestOps工程师学习总结
TestOps很新鲜,也是近期衍生的新型职位.那TestOps主要目的是推动整个研发体系与发布体系更多在质量方面.可以这样理解DevOps是从研发推动配合运维和测试,而TestOps是从测试角度推动研 ...
- centos6环境下使用yum安装Ambari
前言: Ambari是apache下面的开源项目,主要通过web UI方式对Hadoop集群进行统一创建和管理,以节省Hadoop集群的运维成本.本文通过安装过程中的截图简要介绍一下相关步骤供需要的朋 ...
- TPFrame框架之robot模块的基本使用
经过几天的努力,基本功能版已经完成,有待大家验证... robot插件主要的功能是帮助我们写部分代码的基本,目前阶段已经实现后台curd数据管理的基本操作,更多功能待续... 1.首先下载robot插 ...