Ubuntu 18.04ソースコードコンパイルインストールOpenCV 4.0手順【セルフ】
6989 ワード
インストール環境
ターゲット
インストール依存
$ sudo apt install -y build-essential cmake git pkg-config libgtk2.0-dev libopenexr-dev
$ sudo apt install -y gfortran libblas-dev liblapack-dev libeigen3-dev
$ sudo apt install -y python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libdc1394-22-dev
$ sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
$ sudo apt update
$ sudo apt install libjasper1 libjasper-dev
$ sudo apt install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
$ sudo apt install -y libavcodec-dev libavformat-dev libswscale-dev libavutil-dev libavresample-dev libxvidcore-dev libx264-dev libv4l-dev
ソースのダウンロード
$ unzip opencv.zip
$ unzip opencv_contrib.zip
事前準備
"https://raw.githubusercontent.com/opencv/opencv_3rdparty/${IPPICV_COMMIT}ippicv/"
次のように変更
file:{$ 1 }
コンパイルコード
$ cd opencv
$ mkdir build
$ cd build
$ cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D INSTALL_C_EXAMPLES=OFF \
-D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-3.4.5/modules \
-D PYTHON3_EXECUTABLE=~/.virtualenvs/{$ }/bin/python\ # python
-D BUILD_EXAMPLES=ON ..
$ make
$ sudo make install
$ sudo ldconfig
$ cd ~/.virtualenvs/cv2/lib/python2.7/site-packages/
$ ln -s /usr/local/lib/python2.7/site-packages/cv2.so cv2.so
$ cd /usr/local/lib/python3.6/site-packages/cv2/python-3.6/
$ sudo mv cv2.cpython-36m-x86_64-linux-gnu.so cv2.so
$ cd ~/.virtualenvs/cv/lib/python3.6/site-packages/
$ ln -s /usr/local/lib/python3.5/site-packages/cv2/python-3.6/cv2.so cv2.so
インストールの確認
$ python
Python 3.6.9 (default, Apr 18 2020, 01:56:04)
[GCC 8.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'3.4.5'
エラー
/sbin/ldconfig.real: /usr/local/cuda-10.1/targets/x86_64-linux/lib/libcudnn.so.7 is not a symbolic link
$ cd /usr/local/cuda/lib64
$ ls -lha libcudnn*
-rwxr-xr-x 3 root root 333M Jan 27 17:06 libcudnn.so
-rwxr-xr-x 3 root root 333M Jan 27 17:06 libcudnn.so.7
-rwxr-xr-x 3 root root 333M Jan 27 17:06 libcudnn.so.7.5.0
-rw-r--r-- 1 root root 331M Jan 27 17:06 libcudnn_static.a
$ sudo cp libcudnn.so libcudnn.so.bk
$ sudo cp libcudnn.so.7 libcudnn.so.7.bk
$ sudo rm libcudnn.so
$ sudo rm libcudnn.so.7
$ sudo ln -sf libcudnn.so.7.5.0 libcudnn.so.7
$ sudo ln -sf libcudnn.so.7 libcudnn.so
$ sudo ldconfig