想要在服務器上爲自己安裝一個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試試!