Skip to content

Instantly share code, notes, and snippets.

@devymex
Last active November 8, 2020 08:37
Show Gist options
  • Save devymex/0a3821dca1d0343055ad5fe33ac20fdb to your computer and use it in GitHub Desktop.
Save devymex/0a3821dca1d0343055ad5fe33ac20fdb to your computer and use it in GitHub Desktop.
Build OpenCV In Ubuntu 18.04 with python3
#!/bin/bash
set -e
sudo apt install build-essential git libgtk2.0-dev pkg-config
sudo apt install libavcodec-dev libavformat-dev libswscale-dev libgoogle-glog-dev
sudo apt install cmake
ROOT_PATH=$(pwd)
ENABLE_PARALELLE=ON
sudo rm -rf build
mkdir -p build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON \
-DCMAKE_INSTALL_PREFIX=/usr/local \
-DBUILD_opencv_python3=ON -DENABLE_CXX11=ON \
-DWITH_1394=OFF -DCMAKE_VERBOSE_MAKEFILE=ON \
-DWITH_IPP=$ENABLE_PARALELLE -DWITH_TBB=$ENABLE_PARALELLE\
-DWITH_OPENMP=$ENABLE_PARALELLE -DWITH_PTHREADS_PF=$ENABLE_PARALELLE\
-DCMAKE_SKIP_BUILD_RPATH=OFF -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF \
-DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=OFF -DOPENCV_GENERATE_PKGCONFIG=ON \
-DPYTHON3_LIBRARY=$(python3 -c "from distutils.sysconfig import get_config_var;from os.path import dirname,join ; print(join(dirname(get_config_var('LIBPC')),get_config_var('LDLIBRARY')), end='')") \
-DPYTHON3_NUMPY_INCLUDE_DIRS=$(python3 -c "import numpy; print(numpy.get_include(), end='')") \
-DPYTHON3_PACKAGES_PATH=$(python3 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(), end='')") \
-DWITH_CUDA=ON -DENABLE_FAST_MATH=1 -DCUDA_FAST_MATH=1 -DWITH_CUBLAS=1 \
-DOPENCV_EXTRA_MODULES_PATH=$ROOT_PATH/opencv_contrib-4.3.0/modules
make all -j8
sudo -E make install -j8
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment