【OpenCV】 在CentOS下搭建OpenCV开发环境
最近开始入模式识别的坑,自然被迫上OpenCV了。
在多次尝试给VS2015扩展Windows 10 SDK无果后(不要问我为啥。。VS2015开发C++的标准库全给扔到这个SDK里了,打包在VS安装程序里的下载地址被墙掉,所以完全没法下。。),果断决定换Linux + GCC环境。
Linux选择了CentOS7,VM下给1.5G内存双核,NAT的网络模式。以下备注环境搭建流程和遇到的问题
开始折腾时准备用VMTools先搞定文件共享,然后折腾半天发现VM10自动安装的VMTool好像功能不全还是怎么的,得卸载重装。 这里需要注意就是CentOS原版没有Perl和GCC,而VMTools需要这两个作为先决条件。 GCC的安装很容易, yum install gcc gcc-c++即可。 Perl的基本环境也可以用 yum install perl* 搞定,但是如果要装特定版本的需要单独折腾手动装。(截至这时我的vmTools并没有成功安装,公司网络太糟糕严重影响效率)
关于VMTools的安装,很多人安装中会发现提示Kernel版本不对。这里有说将VMTools内 /tmp/vmware-tools-distrib/lib/modules/source目录下,解压vmhgfs.tar,修改解压后的shared/compat_dcache.h文件,把54行 if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0) 的版本号改成 3,10 之后重新打包成vmhgfs.tar,但是试验时这行的版本是2.8.x, 低于我CentOS内核……故暂时无解。 这里外链一个还没看的网址,据说有解决方案:http://www.crifan.com/vmware_workstation_ubuntu_install_vmware_tools_enter_the_path_to_the_kernel_header_files_for_the_3_8_0_27_generic_kernel/
跳过VMTools之后开始OpenCV的环境搭建,这里以备份为主:
首先需要安装依赖包,这部非常重要(感谢各位认真写博客的大神~)
命令如下:
yum install cmake gcc gcc-c++ gtk+-devel gimp-devel gimp-devel-tools gimp-help-browser zlib-devel libtiff-devel libjpeg-devel libpng-devel gstreamer-devel libavc1394-devel libraw1394-devel libdc1394-devel jasper-devel jasper-utils swig python libtool nasm
若不安装则OpenCV在最后调用时会抛错:
OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) in cvNamedWindow,...................
此时只能将编译好的opencv删除再重新编译,即将/usr/local/lib和/usr/local/include/中的有关的删除
mv /usr/local/lib/libopencv*
mv -fr /usr/local/include/opencv
mv -fr /usr/local/include/opencv2
然后再重新编译opencv.
安装/更新Cmake和Opencv
cmake 用于完成openCV的编译,尽量用新版
安装: yum install cmake 理论上这会安装最新版本
下载并解压openCV,并拷贝至/usr/local/下,解压路径为/usr/local/OpenCV_3.1.0/.
进入目录,使用cmake编译openCV
cmake CMakeLists.txt
若无报错,则openCV安装成功。
若报错-> 1). 考虑安装其他版本cmake,再重新编译。
2). 考虑更换openCV的版本,重复步骤。
上述步骤完成后应当为openCV添加环境变量。
此处三种解决方案:
(1)用ln将需要的so文件链接到/usr/lib或者/lib这两个默认的目录下边
ln -s /where/you/install/lib/*.so /usr/lib
sudo ldconfig
(2)修改LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/where/you/install/lib:$LD_LIBRARY_PATH
sudo ldconfig
(3)修改/etc/ld.so.conf (我采用了此种方法)
vim /etc/ld.so.conf
add /where/you/install/lib
sudo ldconfig
暂时记录到此,跑通测试后继续更新
【OpenCV】 在CentOS下搭建OpenCV开发环境的更多相关文章
- 在CentOS下搭建Android 开发环境
在CentOS下搭建Android 开发环境 目录 1.环境搭建 1.1.JDK安装 1.2.Eclipse安装 1.3.ADT安装 1.4.Android SDK安装 1.5.Android NDK ...
- 在CentOS下搭建GoLang开发环境
下载安装包 [vagrant@dk ~]$ wget http://mirrors.ustc.edu.cn/golang/go1.13.linux-amd64.tar.gz 使用USTC 中科大开源镜 ...
- mac os 下搭建android开发环境
mac os 下搭建android开发环境 周银辉 mac os 下搭建android环境比较方便, 如下几个步骤: 1,安装jdk 先搞清楚自己是否已经安装,在命令行下:java -version, ...
- Mac下搭建php开发环境教程
方案一:原生安装 这篇文章主要介绍了Mac下搭建php开发环境教程,Mac OS X 内置了Apache 和 PHP,这样使用起来非常方便.本文以Mac OS X 10.6.3为例,需要的朋友可以参考 ...
- 【原创】windows下搭建vue开发环境+IIS部署
[原创]win10下搭建vue开发环境 如果要转发,请注明原作者和原产地,谢谢! 特别说明:下面任何命令都是在windows的命令行工具下进行输入,打开命令行工具的快捷方式如下图: 详细的安 ...
- Windows下搭建Git开发环境
Windows下搭建Git开发环境主要有以下三种方法: 1,VS,vs2013和vs2015中已经集成了git插件了 2,msysGit+TortoiseGit 3,msysGit+SourceTre ...
- Ubuntu 12.04下搭建Qt开发环境
http://download.qt.io/official_releases/qt/ Ubuntu 环境下Gtk与Qt编译环境安装与配置(系统环境是Ubuntu 12.04) 1.配置基础开发环境G ...
- Ubuntu系统下搭建Python开发环境
之前演示了在Windows中安装Pycharm,很简单.下面介绍一下如何在Ubuntu中安装Pycharm 1.更新Python至3.5.1,执行以下命令: sudo add-apt-reposito ...
- mac 下搭建 Android 开发环境
因工作需要,要在mac 下搭建 Android 开发环境.谷歌.度娘了好久,没有找个一个完整又系统的方法,很是苦恼.最终,皇天不负有心人,找到了下面这篇文档,结合亲身体验,特此记录.也为有这方面需求的 ...
- 在win10环境下搭建 solr 开发环境
在win10环境下搭建 solr 开发环境 2017年05月30日 09:19:32 SegaChen0130 阅读数:1050 在win10环境下搭建 solr 开发环境 安装环境 Windo ...
随机推荐
- 当系统开启safe_mode和 open_basedir
当系统开启safe_mode和 open_basedir,在程序中使用以下语句curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);并且遇到301,302状态吗时 ...
- C# xml格式字符串,插入到数据库出现非法字符
在debug模式下快速监视看到的数据是完全正常的,即取到的是<xml>,但是把该字符串拷贝到UltraEdit中,取到的第一个字符是问号.使用正则表达式^[^<]进行替换,意思是把开 ...
- java 企业网站源码模版 屏幕自适应 有前后台 springmvc SSM 生成静态化引擎
前台: 支持四套模版, 可以在后台切换 系统介绍: 1.网站后台采用主流的 SSM 框架 jsp JSTL,网站后台采用freemaker静态化模版引擎生成html 2.因为是生成的html,所以访问 ...
- js—input框中输入数字,动态生成内容的方法
项目中需要在前端实现: 用户输入数字n,动态生成n个元素,删除n,自动清空n个元素(如图一): 用户输入数字n,失焦生成n个元素,再聚焦修改n,自动清空n个元素(如图二): 图一: 图二: 需求一实现 ...
- CentOS7安装MongoDB及基础操作
安装环境说明 系统环境说明 [root@master ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [root@ma ...
- ZYNQ系列
赛灵思公司(Xilinx)推出的行业第一个可扩展处理平台Zynq系列.旨在为视频监视.汽车驾驶员辅助以及工厂自动化等高端嵌入式应用提供所需的处理与计算性能水平. 中文名 ZYNQ系列 开发商 赛灵 ...
- 1-基于Xilinx XCKU115的半高PCIe x8 硬件加速卡
基于Xilinx XCKU115的半高PCIe x8 硬件加速卡 一.概述 本板卡系我公司自主研发,采用Xilinx公司的XCKU115-3-FLVF1924-E芯片作为主处理器,主要用于FPGA硬件 ...
- LinuxC语言实现服务端与客户端多进程通信
链接:https://pan.baidu.com/s/1YDNIyTKAkh4E5x2dBeTgcQ 提取码:y35q 复制这段内容后打开百度网盘手机App,操作更方便哦 本实验用的是Centos7m ...
- Less 混合(mixin)
Less的混合:混合可以将一个定义好的class A轻松的引入到另一个class B中,从而简单实现class B继承class A中的所有属性.我们还可以带参数地调用,就像使用函数一样. .bord ...
- Linux 查找指定内容在哪个文件中
在实际的工作中,忘记配置项放在哪个文件中时,可借助命令来查询. eg: 1.grep -r "查询内容" 文件目录 #这样查询出来的包括文件名+内容 grep -r -l ...