オペレーティングシステム情報
jwllinux @ jwlLinux〜 $ uname -a Linux jwlLinux 4.4.0-21-generic#37-Ubuntu SMP Mon Apr 18 18:34:49 UTC 2016 i686 i686 i686 GNU / Linux |
jwllinux @ jwlLinux〜 $ lsb_release -a LSBバージョン:core-9.20160110ubuntu0.2-ia32:core-9.20160110ubuntu0.2-noarch:cxx-3.0-ia32:cxx-3.0-noarch:cxx-3.1-ia32:cxx-3.1-noarch:cxx-3.2-ia32 :cxx-3.2-noarch:cxx-4.0-ia32:cxx-4.0-noarch:cxx-4.1-ia32:cxx-4.1-noarch:security-9.20160110ubuntu0.2-ia32:security-9.20160110ubuntu0.2-noarch ディストリビューターID:LinuxMint 説明:Linux Mint 18 Sarah リリース:18 コードネーム:サラ |
opencv3をダウンロードします。4.10ソースコード
ダウンロードリンク:https://opencv.org/releases/
opencv-3.4.10.zip
依存パッケージのインストール
sudo apt-get installbuild -essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
sudo apt-get install pkg-config libgtk2.0-dev libavcodec-dev libavformat-dev libswscale-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev |
|
sudo apt-get install libtbb2 libtbb-dev |
TBB :スレッドビルディングブロックスレッドビルディングブロック |
sudo apt install qtbase5-dev |
|
メインツールバージョン
jwllinux @ jwlLinux〜 /ダウンロード$ cmake -version cmakeバージョン3.5.1 |
jwllinux @ jwlLinux〜 /ダウンロード$ make -v GNU Make 4.1 |
jwllinux @ jwlLinux〜 /ダウンロード$ gcc --version gcc(Ubuntu 5.4.0-6ubuntu1〜16.04.12)5.4.0 20160609 |
jwllinux @ jwlLinux〜 /ダウンロード$ g ++ --version g ++(Ubuntu 5.4.0-6ubuntu1〜16.04.12)5.4.0 20160609 Copyright(C)2015 Free Software Foundation、Inc。 |
jwllinux @ jwlLinux〜 /ダウンロード$ git --version gitバージョン2.7.4 |
組織の解凍、コンパイル、インストール
ファイルを解凍し、コンパイルされた結果を保存するための新しいフォルダーを作成してから、インストールします(/ usr / localの下にインストールすることを選択します)
$ unzip opencv-3.4.10.zip
$ cd opencv-3.4.10
$ mkdir release
$ cd release
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D WITH_V4L=ON -D WITH_QT=OFF -D WITH_OPENGL=OFF ..
説明:
主にCMakeの設定項目がいくつかあります。最後の「..」は、上位ディレクトリに移動してCMakeLists.txtファイルを見つけることを意味します。作成者はOpenCVプロジェクトによって提供されるCMakeLists.txtファイルを調べました。比較的複雑なので、あまり紹介しません。
さらに、CMakeを評価するためのドキュメントを知っているので、学習曲線は確かに高いです。リンクは次のとおりです。
cmake -D |
-D <var>:<type> = <value>、-D <var> = <value> cmakeキャッシュエントリを作成します。 |
.. |
CMakeLists.txtが上位ディレクトリにあることを示します |
実行後、OpenCVプロジェクト全体のビルドファイル(ビルド)が生成され、出力は次のようになります。
$ make -j $(nproc)
// -jマルチコアプロセッサをコンパイルするようにします(デフォルトのmakeは1つのコアのみを使用するため、非常に低速です)、$(nproc)は自分のマシンのコア数を返します
$ make install //把编译结果安装到 /usr/local的 lib/ 和 include/下面
考えられる問題
使用するcmakeの構築ソースコード使用Qt5を。このエラーで終了しました:
CMake Error at CMakeLists.txt:20 (find_package):By not providing "FindQt5Core.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "Qt5Core", but CMake did not find one.Could not find a package configuration file provided by "Qt5Core" with any of the following names: Qt5CoreConfig.cmake qt5core-config.cmake Add the installation prefix of "Qt5Core" to CMAKE_PREFIX_PATH or set "Qt5Core_DIR" to a directory containing one of the above files.If "Qt5Core" provides a separate development package or SDK, be sure it has been installed. |
解决方案:
需要安装包qtbase5-dev。
$ sudo apt install qtbase5-dev |
方案二:
Cmake构建选项中,将-D WITH_QT=OFF 填为OFF
至于此构建选项对编译处理的OpenCV的影响,笔者后续用到后再作详细分析。