这篇博客介绍在Linux中的gcc和g 编译环境下如何使用cmake来编译OpenCV源代码。我基本是按照OpenCV官方的说明文档,一步步地进行的,所以表述不清楚的地方还请参照原文。
1. 编译环境
- 操作系统:Ubuntu 14.10
- gcc 版本: 4.9.1
- cmake 版本: 2.8.12.2
- opencv版本: 2.4.10
2. 依赖包安装
依赖包包括在编译的时候要用到一些软件,像gcc,cmake;还有一些是下载opencv需要的工具,像Git;还有一些编译opencv所必需的,像ffmpeg 或libav ;还有一些是可选的包等等。可以通过下面几条命令来安装这些依赖包:
代码语言:javascript复制sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
运行完这三条命令,依赖包就安装好了!
3. 获取OpenCV源代码
官方网站上给了2种获取源代码的方式:
- 从Sourceforge上获取最新的稳定版(lastest staable)的OpenCV,下载完解压即可。
- 从github上下载最前沿的版本。也可以在命令行下载:git clone https://github.com/Itseez/opencv.git
4. 用cmake编译OpenCV
下载完源代码后,就可以用cmake来编译OpenCV了。 解压下载得到的opencv包,然后进入包目录,在下面进行操作。
- 创建release目录,然后将进入该目录,下面编译都是针对Release版来进行编译的: mkdir release cd ~/release
- 执行cmake命令:
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local .. 上面的
CMAKE_BUILD_TYPE =RELEASE
指明编译的版本是Release版,CMAKE_INSTALL_PREFIX=/usr/local
指明编译后的可执行程序的存放目录。 - 执行make和install: make sudo make install 如果没有出错的话,OpenCV的整个编译过程就完成了! 如果有错误,那就复制错误内容,到网上查找解决办法,一般来说这是个很痛苦的过程,所以希望你有好运气,一次编译就能过:)
5. 在gcc/g 编译时使用opencv
在g 里面编译使用了opencv库的程序时,只需要在后面添加pkg-config opencv --cflags --libs
即可,如下例子:
g -o main main.cpp`pkg-config opencv --cflags --libs`
以上就是Linux环境下使用OpenCV的一些总结。