【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

 

暂时记录到此,跑通测试后继续更新

 

转载于:https://www.cnblogs.com/DannielZhang/p/5217514.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值