OpenCV在Linux(Fedora)下搭建开发环境简述
盼望了好久的Fedora21终于发行了。先来晒一张图:
默认桌面还是那么简洁:
好了,废话少说。来看看在Fedora下搭建opencv开发环境,因为我已经搭建好了(过程比较艰辛)
先注明参考文章,感谢这位博主:
http://www.cnblogs.com/gala/archive/2011/10/10/2206529.html
下面是我写的了。
总叙:因为主要是参考的官方文档搭建的,所以呢如果没有什么问题我就直接带过。
1.各种依赖关系:
GCC 4.4.x or later.(按照安装gcc和g++的方式随便网上去搜安装方式就好)
CMake 2.6 or higher;(同上,也可以自己检查自己有没有安装好)
Git(因为如果你是从github上clone下来的源代码,就必须用这个,如果是已经下载了压缩包,可以忽略这条,当然安装也不难)
GTK+2.x or higher, including headers (libgtk2.0-dev);
pkg-config;(这个可能已经预装了,所以先试试下面这个命令吧)
Python 2.6 or later and Numpy 1.5 or later with developer packages (python-dev, python-numpy);(这个就是正常装就好,最好是自己下载numpy的源代码,否则联网安装会很慢很麻烦)
ffmpeg or libav development packages: libavcodec-dev, libavformat-dev, libswscale-dev;
[optional] libdc1394 2.x;
[optional] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev.
最后那个libjasper那找到,所以就没安。
至此所有依赖安装完毕。下面是安装环节:
解压缩下载opencv的源代码包得到一个目录:
进入这个目录后在目录下新建一个文件夹,名为release
进入release目录(当然是在终端里进入),现在空无一物,
然后执行如下命令
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON ..
注意最后代表上一级目录的两个点别忘了。(命令我都是用sudo执行的)
完成后如果没有错误(注意是错误,警告不管)
执行:
make
make install
这里面make是主要的,如果make出错了,就必须纠正后重新make。当然不是人品特别不好应该能make出来。此过程相当时间长,最好准备点其他东西打发时间。
下面是添加库路径:
sudo vim /etc/ld.so.conf.d/opencv.conf 添加如下内容 /usr/local/lib
然后需要更新系统库:
sudo ldconfig
设置环境变量:在个人或是系统配置文件中都可以:
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
另外在测试之前需要进行如下操作:
sudo cp /usr/local/lib/pkgconfig/opencv.pc /usr/lib/pkgconf
就是将pkg-config文件拷贝到全局目录下。
下面是来自文档的测试代码:
DisplayImage.cpp
#include <stdio.h>
#include <opencv2/opencv.hpp> using namespace cv; int main(int argc, char** argv )
{
if ( argc != )
{
printf("usage: DisplayImage.out <Image_Path>\n");
return -;
} Mat image;
image = imread( argv[], ); if ( !image.data )
{
printf("No image data \n");
return -;
}
namedWindow("Display Image", CV_WINDOW_AUTOSIZE );
imshow("Display Image", image); waitKey(); return ;
}
新建一个名为CMakeLists.txt的文件内容如下:
cmake_minimum_required(VERSION 2.8)
project( DisplayImage )
find_package( OpenCV REQUIRED )
add_executable( DisplayImage DisplayImage.cpp )
target_link_libraries( DisplayImage ${OpenCV_LIBS} )
将两个文件拷贝到同一目录下(最好新建一个项目目录)
在此目录的终端下执行如下命令:
注意别忘了cmake后面的代表当前目录的点。
没有问题之后就是直接:
没有问题后执行程序查看结果:
至此执行完毕,当然我们也可以进入源代码自带的示例中进行检测,这里就不多说了。
因为只是初步配置,所以可能会出现很多问题,如果将来出现了问题我会再记录补充的。
欢迎读者讨论。
以上。
OpenCV在Linux(Fedora)下搭建开发环境简述的更多相关文章
- QT + OpenCV + MinGW 在windows下配置开发环境
由于研究项目需要,最近开始接触C++界面设计,关于“QT + OpenCV + MinGW在windows下配置开发环境”着实让人头疼,单次配置时间相当长,也十分不容易,本人第一次配置成 ...
- Linux—CentOS7下python开发环境配置
CentOS7下python开发环境配置 上一篇博客讲了如何在Centos7下安装python3(https://www.cnblogs.com/zivli/p/9937608.html),这一次配置 ...
- Linux程序设计(搭建开发环境--curses)
看官们.咱们今天要说的内容.是前面内容的一点小补充,详细的内容是:安装curses开发包.以搭建 开发环境.闲话休说,言归正转. 我们在前面说过搭建开发环境的内容,主要说了开发环境中的GCC和VIM, ...
- Scrapy爬虫学习笔记 - windows \ linux下搭建开发环境2
四.虚拟环境的安装和配置 virtualenv可以搭建虚拟且独立的python运行环境, 使得单个项目的运行环境与其它项目独立起来. virtualenv本质上是个python包 虚拟环境可以将开发环 ...
- FFMpeg在Windows下搭建开发环境【转】
本文转载自:http://blog.csdn.net/wootengxjj/article/details/51758621 版权声明:本文为博主原创文章,未经博主允许不得转载. FFmpeg 是一个 ...
- windows下搭建开发环境
PHP集成开发环境有很多,如XAMPP.AppServ......只要一键安装就把PHP环境给搭建好了.但这种安装方式不够灵活,软件的自由组合不方便,同时也不利于学习.所以我还是喜欢手工搭建PHP开发 ...
- 第二章:windows下搭建开发环境
IDE ---- pycharm数据库 --- mysql.redis.elasticsearch开发环境 -- anaconda 第一节:pycharm的安装和简单使用...(网上一搜一大堆,所以没 ...
- linux系统下搭建php环境之-Discuz论坛
1.安装搭建论坛必要的软件 apache php mysql CentOS系统我们可以直接使用 yum install 的方式进行软件安装,腾讯云有提供软件安装源,是同步CentOS官方的安装源,包涵 ...
- linux 系统下java开发环境的配置
在安装之前,确保你的linux系统下有 jdk,jboss等相关软件 一.配置JDK环境变量 步骤: 解压缩JDK文件: unzip jdk1.6.0_31.zip 目录下显示文件夹jdk1.6.0_ ...
随机推荐
- 给定一个整数 n,返回 n! 结果尾数中零的数量。
示例 1: 输入: 3 输出: 0 解释: 3! = 6, 尾数中没有零. 示例 2: 输入: 5 输出: 1 解释: 5! = 120, 尾数中有 1 个零. 代码部分 class Solution ...
- ASP.NET Core MVC使用MessagePack配合前端fetch交换数据
1.安装Nuget包 - WebApiContrib.Core.Formatter.MessagePack https://www.nuget.org/packages/WebApiContrib.C ...
- ssm(Spring、Springmvc、Mybatis)实战之淘淘商城-第四天(非原创)
文章大纲 一.课程介绍二.今日内容介绍三.参考资料下载四.参考文章 一.课程介绍 一共14天课程(1)第一天:电商行业的背景.淘淘商城的介绍.搭建项目工程.Svn的使用.(2)第二天:框架的整合.后台 ...
- Toolbar自定义布局
Toolbar如何使用想必大家清楚地很,实际开发中标题栏的样式各色各样,因此其基本样式便不能满足我们的需求,这就需要我们自定义布局.打开ToolBar源码我们发现它继承ViewGroup,这就表示我们 ...
- 详解Android Activity启动模式
相关的基本概念: 1.任务栈(Task) 若干个Activity的集合的栈表示一个Task. 栈不仅仅只包含自身程序的Activity,它也可以跨应用包含其他应用的Activity,这样有利于 ...
- ASP.NET Eval四种绑定方式 及详解
1.1.x中的数据绑定语法 <asp:Literal id="litEval2" runat="server" Text='<%#DataBinde ...
- fabric的安装
https://blog.csdn.net/lepton126/article/details/79148027
- winpcap编程设置过滤器之指定获取某个网站的数据
下面,我将以 乱世隋唐页游 为例,通过编码获取这里面的数据. 游戏图: 我是乱世隋唐的网址是:www.917st.com 这个是官网网址的服务器地址. 42.62.0.14 我玩的游戏服是84区.网 ...
- 禁止浏览器static files缓存篇
由于CSS/JS文件经常需要改动,前端调试时是不希望浏览器缓存这些文件的. Meta法 目前在chrome调试还没有遇到问题,好用!此方法假设浏览器是个好人!很听我们的话! <meta http ...
- mysql 删除数据重复的记录
delete from user where id not in ( select * from ( select min(id) from user group by username,email ...