Linux下安装多版本的Opencv

Linux下安装多版本的Opencv

我所使用的是Ubuntu14.04,通常Ubuntu系统是自带opencv的,使用命令

命令查看Opencv当前的版本:pkg-config --modversion opencv

1: 查看当前的版本:

pkg-config --modversion opencv 

可以查看当前的opencv版本,而我的系统自带的是opencv-2.4.8
  • 因为不知道如何卸载自带的opencv,所以我决定直接安装另一个版本的opencv,即让两个版本opencv共存。首先下载新版本的opencv安装包,我因为实验需要,下载的是opencv-2.4.10,之后解压
  • 安装一些opencv的依赖项
sudo apt-get -qq install libopencv-dev build-essential checkinstall cmake pkg-config yasm 
libjpeg-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev libxine-dev 
libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev python-dev python-numpy libtbb-dev 
libqt4-dev libgtk2.0-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev 
libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils


2:编译opencv

进入解压后的opencv安装包,新建目录,目录名为build,并进入该目录
命令:tar -zxvf   opencv-2.4.10.tar.gz
cd opencv-2.4.10
mkdir build
cd build

输入命令
cmake  -D WITH_TBB=ON  -D WITH_V4L=ON -D CMAKE_INSTALL_PREFIX=/usr/local/opencv/2.4.10 ../
make -j12
sudo make install -j12 


3:配置Opencv的环境:

这样opencv-2.4.10就被安装在了/usr/local/opencv/2.4.10目录下.

接下来要对新安装的opencv-2.4.10进行配置,否则系统默认的还是opencv-2.4.8版本。

通过修改bashrc文件来设置PKG_ CONFIG_PATH


打开文件:       vim ~/.bashrc

在文件的末尾加入:export PKG_CONFIG_PATH=/usr/local/opencv/2.4.12/lib/pkgconfig

export PKG_CONFIG_PATH     

保存之后,再使用命令   source ~/.bashrc  

然后配置lib的路径:

cd /etc/ld.so.conf.d

touch opencv.conf

sudo vi opencv.conf

写入:/usr/local/opencv/2.4.10/lib

sudo ldconfig


这时候使用命令测试:

pkg-config --modversion opencv

pkg-config --cflags opencv  

pkg-config --libs opencv 


可以看到全都已经变成了opencv-2.4.10版本了。如果还想使用原来的opencv-2.4.8,只需要再修改PKG_CONFIG_PATH为opencv-2.4.8的pkgconfig路径即可。

遇到的问题:编译的opencv的时候会遇到两个问题,多是因为先安装了cuda导致的:

问题1:compute_11架构的问题:

第一:删除Build目录,重新重建编译;

编译命令: cmake  -D WITH_TBB=ON  -D WITH_V4L=ON -D CMAKE_INSTALL_PREFIX=/usr/local/opencv/2.4.10 CUDA_GENERATION=Kepler ..

之后步骤都一样了!

问题2:NppiGraphcutState未定义的问题:

需要找到在graphcuts.cpp中把

#if !defined (HAVE_CUDA) ||defined (CUDA_DISABLER) 

改为

#if !defined (HAVE_CUDA) ||defined (CUDA_DISABLER) || (CUDART_VERSION >=8000)

即可!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值