cmake之管理多版本opencv

2021-07-12 05:17:43 字數 1085 閱讀 3823

1、我要使用orb-slam2,依賴dbow2,dbow2依賴dlib,不就是裝軟體嘛,誰不會啊~

2、

git clone  

cd dbow

mkdir build

cd build

cmake ..

make

報錯了,找不到標頭檔案。

使用opencv的版本不對,這個庫使用了最新的版本,正好我最近編譯過最新的opencv,修改cmakelists.txt檔案就可以解決問題。

cmakelists.txt使用的是find_package來鏈結動態庫,find_package會去尋找findopencv.cmake檔案。然而我還裝了cuda版本的opencv,預設使用find_package下,是使用findcuda.cmake。如果修改這個檔案,勢必會影響cuda其他的程式。所以,決定用pkg-config來鏈結動態庫。

修改這句話:

find_package(opencv required)

find_package(pkgconfig)

pkg_check_modules(opencv opencv>=3.1.0)

set(opencv_libs $)

link_directories($)

為了讓pkg-config找到正確版本的opencv,需要把正確版本的opencv的opencv.pc檔案放到pkg_config_path路徑下,我的是

/usr/lib/x86_64-linux

-gnu/pkgconfig

再次編譯,可以順利通過。

pkg-config的常見用法是直接接在gcc/g++命令裡面,如:

g++

test

.cpp-o

test

`pkg

-config--

cflags--

libs

opencv`

pyenv多版本管理

多版本管理 多虛擬環境virtualenv pyenv用於多個python版本的管理,virtualenv用於相同版本各種模組包環境的隔離 可能的依賴包 yum install gcc gcc c yum install readline devel yum install y bzip2 bzip...

nodejs 多版本管理

nodejs版本檢視 官網推薦使用 nvmw 或者 nvm windows 其他產品 nodist nvmw 安裝準備 nvmw 安裝步驟 開啟cmd win r 或 win 輸入 cmd 定位到目錄 cd c usersadministrator 轉殖nvmw git clone git home...

g 多版本管理

1.ps ef grep redis ps 將某個程序顯示出來 a 顯示所有程式。e 顯示所有程序 f 全格 r 只顯示正在進行的程序 grep命令是查詢 中間的 是管道命令 是指ps命令與grep同時執行 這條命令的意思是顯示有關redis有關的程序 uid 使用者id pid 程序id 2.ki...