Skip to main content

OpenCV

Build

build_opencv
#!/bin/bash
VERSION=$1
mkdir -p $HOME/src
cd $HOME/src
wget https://github.com/opencv/opencv/archive/$VERSION.tar.gz
tar xvf $VERSION.tar.gz
rm $VERSION.tar.gz
wget https://github.com/opencv/opencv_contrib/archive/$VERSION.tar.gz
tar xvf $VERSION.tar.gz
rm $VERSION.tar.gz
cd opencv-$VERSION
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=$HOME/src/opencv-$VERSION/install \
-DOPENCV_EXTRA_MODULES_PATH=$HOME/src/opencv_contrib-$VERSION/modules \
-DCMAKE_BUILD_TYPE=RELEASE -DBUILD_EXAMPLES=OFF -DBUILD_DOCS=OFF \
-DBUILD_PERF_TESTS=OFF -DBUILD_TESTS=OFF -DENABLE_PRECOMPILED_HEADERS=OFF ..
make -j
make install

On a raspberry pi OS also install:

sudo apt install cmake libeigen3-dev libgstreamer1.0-dev

Run:

bash build_opencv 4.5.5

Compile against this version

CMakeLists.txt
set(OpenCV_DIR $ENV{OpenCV_DIR})
find_package(OpenCV REQUIRED)

target_link_libraries(my_lib_or_executable
opencv_core
opencv_imgproc
opencv_imgcodecs
opencv_highgui
opencv_features2d)

where OpenCV_DIR points to /home/$USER/src/opencv-4.5.5/install/lib/cmake/opencv4