Ubuntu下編譯安裝opencv 4.2.0並配置CLion和Code::Blocks使用

下載opencv和opencv_contrib

下載網址:opencv的github官方站點
這裏寫圖片描述如果你喜歡使用git下載的話

cd ~/Downloads
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git

點擊release選擇合適的版本下載。
這裏寫圖片描述

安裝基礎依賴和工具

sudo apt install python3-dev libgtk-3-dev pkg-config ffmpeg libjpeg-dev libavcodec-dev libtiff5-dev libavformat-dev libswscale-dev libavresample-dev libpng-dev

出現某些包無法安裝情況忽略即可。pkg-config和libgtk-3-dev要安裝成功。可以使用試錯法慢慢安裝這些依賴。有些也許不是必要額。此處僅供參考。最好提前通過各種方式知道自己的項目必須用到那些依賴,否則最後還得重新build,特別心酸。這上面幾個都是通過一次次的失敗積累出來的。我是做視頻目標跟蹤方面的所以比較重視videoio的功能。


編譯opencv和opencv_contrib

cd <path to opencv source>
sudo mkdir build
cd build #以上三句現在一般可以直接使用文件管理器實現,無須命令創建。
cmake -D CMAKE_BUILD_TYPE="Release" -D OPENCV_EXTRA_MODULES_PATH=~/Downloads/opencv_contrib-4.2.0/modules ~/Downloads/opencv-4.2.0 ..

在這裏插入圖片描述可以看到gtk和ffmpeg等選項是開啓的,以及幾種圖片的支持。
開始編譯。

sudo make -j8

-j 指調用的線程數,推薦-j8

sudo make install

在這裏插入圖片描述
到這裏就完成了安裝過程。
去/usr/local/include
你會發現一個opencv4的文件夾(我裝的是4.2.0)裏面包含一個opencv2.這便是我們的include所在。

配置code::blocks

在code::blocks中打開設置編譯器
在這裏插入圖片描述
只在搜索目錄的編譯器 條目下,添加兩個路徑即可。然後在linker裏添加/usr/local/lib.
在link settings裏將/usr/local/lib裏所有的opencv的.so選中添加。
這樣就使其與codeblocks鏈接起來相認了。重啓一下軟件,然後測試一下。
在code::blocks中Linux上一般沒有自動縮進,

sudo apt install codeblocks-contrib

重啓一下軟件就可以解決。
最後讓大家看一看成果。堅持就是勝利,這個過程中無數的掉坑,無數的想放棄,但是還是摸索到了最後。希望對大家有一滴滴的幫助。

在這裏插入圖片描述
Linux的code block實在利用xterm的,而xterm的字體和大小都是極品的醜與小,csdn上有相關的修改可以參考。建議修改掉(在配置opencv之前)

配置CLion

編輯新建項目的CMakeLists.txt如下:

cmake_minimum_required(VERSION 3.15) 
project(opencv)
find_package(OpenCV REQUIRED)	#新添加的內容
set(CMAKE_CXX_STANDARD 20)
add_executable(opencv main.cpp)
include_directories(${OpenCV_INCLUDE_DIRS})	#新添加的內容
target_link_libraries(opencv ${OpenCV_LIBS})	#新添加的內容

在原來的文件基礎上在相應位置加上上面備註了(新添加的內容)的三句話,重載一下該文件已經。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章