Try   HackMD
tags: linux

Ubuntu 20.04 LTS 編譯 OpenCV 4.5.0

  • 環境

    • ubuntu 20.04 LTS
  • 相依套件安裝

sudo apt install build-essential -y sudo apt install pkg-config -y sudo apt install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev -y sudo apt install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev -y sudo apt install libxvidcore-dev libx264-dev libgtk2.0-dev libgtk-3-dev -y sudo apt install libcanberra-gtk* -y sudo apt install libatlas-base-dev gfortran -y sudo apt install python-dev python-pip -y sudo pip install --upgrade pip sudo pip install numpy sudo apt install python3-dev python3-pip -y sudo pip3 install --upgrade pip sudo pip3 install numpy sudo apt install --reinstall linux-libc-dev

get manually removed header file

  • 下載原始碼

mkdir -p ~/library/ cd ~/library && git clone https://github.com/opencv/opencv
  • 錯誤修正

sudo cp /usr/include/x86_64-linux-gnu/sys/io.h /usr/include
  • 編譯

git checkout 4.5.0 mkdir -p ~/library/opencv/build cmake -D CMAKE_BUILD_TYPE=Release \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D BUILD_EXAMPLES=ON \ -D BUILD_TESTS=OFF \ -D INSTALL_C_EXAMPLES=OFF \ -D INSTALL_PYTHON_EXAMPLES=OFF \ -D BUILD_opencv_python3=ON \ -D PYTHON3_INCLUDE_DIR=/usr/include/python3.8 \ -D PYTHON3_LIBRARY=/usr/lib/python3.8/config-3.8-x86_64-linux-gnu/libpython3.8.so .. make -j`nproc`
  • 安裝至系統

sudo make install -j`nproc`