想要在服务器上为自己安装一个opencv3.3.0。
运行pkg-config --modversion opencv
发现现有的opencv是2.4.8。但是仔细没有找到opencv.lib相关文件。。只在/usr/include下找到了一些头文件。
学习pkg-config
命令,可以参考下面这个blog
http://blog.csdn.net/luotuo44/article/details/24836901
运行pkg-config --help
可以查看相关的命令
然后,又比较好奇,根据上面那个博客的介绍,pkg-config是根据对应的.cg文件找到对应第三方库的lib和头文件的,那么opencv.cg又在什么地方呢。
在服务器终端echo $PKG_CONFIG_PATH
啥都没有输出,意思是这个变量压根没有创建,那么pkg-config
怎么知道去哪儿找.cg文件的呢?
原来:
参考: https://askubuntu.com/questions/210210/pkg-config-path-environment-variable
大概懂了一点pkg-config
又看到一篇文章,介绍了怎么安装多版本的opencv,也用到了pkg-config
http://blog.csdn.net/cumt08113684/article/details/53006376
(一个小时后……)
。。遗憾的是,安装多版本的opencv还是失败了,因为我是想在服务器为自己的工作目录安装一个opencv3.3.0。而自己是没有root权限的,因此下面这些依赖项自己无法用apt-get去安装
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
最后,想碰碰运气,直接去cmake,然后make。
参考:
https://boliu68.github.io/2014/how-to-compile-OpenCV-without-root/
结果make就报错了,提示需要tiff库(正是上面提到的),所以就gg了。不过,虽然没有root权限,想要使用apt-get,方法也不是没有,可以直接:
apt-get source package
cd package
./configure --prefix=$HOME
make
make install
然而,我发现服务器上本来就装了一个opencv3.1,而且也有tiff。而且我试了下opencv也是可以用的,只是tiff的目录没有加入我的.bashrc,说不定可以把目录加进来再make试试!