Ubuntu同時安裝OpenCV2和OpenCV3

2021-08-03 04:24:40 字數 1790 閱讀 6684

我用的是ubuntu14.04,之前已經安裝了opencv2(預設的安裝路徑是/usr/local),現在需要安裝opencv3.2,但是又不想將opencv2刪除,怎麼辦???對,在別的地方安裝。

2、將預設的安裝路徑:/usr/local修改為你要安裝的路徑

set(cmake_install_prefix "/home/alan/slambook/opencv3"

cache path "installation directory")

3、接著編譯,很簡單,
cmake ..

make

make install

4、cmake下指定opencv版本

最後就是如何在工程中加入opencv3.2的庫和標頭檔案。這裡需要改變一下,否則很容易鏈結到位於/usr/local下的opencv2。

關鍵檔案:opencvconfig.cmake。在opencv編譯好後,所在目錄中一般會有乙個叫opencvconfig.cmake的檔案,這個檔案中指定了cmake要去**找opencv,其.h檔案在**等,比如其中一行:

# provide the include directories to the caller

set(opencv_include_dirs "/home/ubuntu/src/opencv-3.1.0/build"

"/home/ubuntu/src/opencv-3.1.0/include"

"/home/ubuntu/src/opencv-3.1.0/include/opencv")

只要讓cmake找到這個檔案,這個檔案就指定了opencv的所有路徑,因此設定opencv_dir為包含opencvconfig.cmake的目錄,如在我的c++工程cmakelists.txt中新增

在工程檔案中的cmakelists.txt加上:

set(opencv_dir "/home/ubuntu/src/opencv-3.1.0/build")
來重新制定opencv的安裝路徑,因為安裝opencv2時已經生成了系統變數opencv_dir = /usr/local/share/opencv,所以需要用set來改變這個變數的值,新的路徑為與檔案opencvconfig.cmake路徑相同。

注意:這個opencvconfig.cmake檔案裡面定義了一堆變數,可以在這裡面查閱使用。如opencv_include_dirs 、opencv_libs 等。

我的opencvconfig.cmake在

/home/ubuntu/src/opencv-3.1.0/build
注意,將其新增在project(myprojectname)之前。

如cmakelists.txt內容如下:

cmake_minimum_required(version 2.8)

set(opencv_dir "/home/ubuntu/src/opencv-3.1.0/build")

project( camera )

find_package( opencv required )

add_executable( camera camera.cpp )

target_link_libraries( camera $ )

因此,我們期望使用哪個版本的opencv,只要找到對應的opencvconfig.cmake檔案,並且將其路徑新增到工程的cmakelists.txt中即可了。

Ubuntu 同時安裝兩個版本的OpenCV

由於opencv有2 3 4版本,再跑開源 時會有版本要求,因此,需要安裝多個版本的opencv 因為前期已經裝過opencv4,現在安裝opencv3 2.開啟cmake gui,建立build 編譯opencv3 contrib3 3.make make sudo make install 4....

OpenCV conda安裝乙個OpenCV3

sina weibo 小鋒子shawn tencent e mail 403568338 qq.com anaconda2或者anaconda3整合了python各種庫,很省心。但是對於研究或者使用計算機視覺和影象處理庫的人來說,加上乙個opencv,那就更好了。於是,在裝了各種深度學習框架和庫之後...

ubuntu下同時安裝和使用不同版本的庫

工作中我們時常需要在不同版本的庫間切換,如果同時安裝了多個版本的庫,將會讓我們的工作更加輕鬆.本文介紹了在ubuntu下安裝並使用不同版本庫的方法.安裝ubantu 下常用的庫安裝位置有兩個 usr 和 usr local.通過apt get 安裝的庫位於 usr,自己make install的庫通...