Qt/Gcc
10-2.OpenCVライブラリをソースコードから作成する 2020/05/19
(Ubuntu)
UbuntuでOpenCVをQt5で使うためにCMakeをつかってソースコードをコンパイルしました。
環境はUbuntu18.04、Qt5.14、OpenCV 3.4.10です。おそらくOpenCV4系も同じ手順だと思います。
Qtのインストールは事前に実施している前提です。
*Qt5のgcc/g++は、Qt5インストール時にToolsからQt Gccをインストールしてください。
*一部の画像はWindows版を使っています。
*/home/XXXXX/Qt5.14.2/5.14.2/gcc_64/lib/cmake/Qt5など、XXXは個別の環境に依存するフォルダ名になります。
1-1 opencv ダウンロード
以下のサイトからソースコードをダウンロードする。
https://opencv.org/releases/
opencv-3.4.10.zipをダウンロードして展開する。
opencv-3.4.10のフォルダができる。このフォルダがソースコードのフォルダである。
1-2.CMakeでのconfigとgenerate
CmakeはコマンドでなくcmakeのGUIツールである。事前にこのツールをubuntuソフトウェアからダウンロードしてインストールしておく
1-3フォルダの設定
CMakeの「Where is the source code:」に上記1-1でダウンロードしたソースコードのフォルダを設定する
buildした結果を保存するフォルダを「Where to build the binaries:」に設定する。ここで設定したreleaseは、新規フォルダとして別途作成したフォルダである。

1-4 コンパイラの選択
Configureを押すとSpecify the generator for this projectでSpecify native compilersを選択する。

そしてgcc,g++コンパイラを設定する。
Nextボタンを押すと以下のダイアログが表示されるので、Compilersの選択ボックスでそれぞれ以下のように設定する。
C /usr/bin/gcc
C++ /usr/bin/g++
Finishを押します。Finishを押すと初期の画面に戻る。

1-5 Configureと設定
初期の画面の下に配置されているConfigureボタンを押す。すると以下の画面のようにConfigureが始まる。
1-5-1 Qt5関連の設定
終了後、Qt関連の設定を実施する。Searchにqtと入力する。そして、WITH_QTにチェックを入れて、再度、Configureを実施する。
このとき、Qt5_DIRの設定ができていない、のようなエラーメッセージが発生したら、Qt5_DIRにディレクトリを設定する。
Qt5_DIR:/home/XXXXX/Qt5.14.2/5.14.2/gcc_64/lib/cmake/Qt5
*環境によっては、「xxx_DIR」と表示されている各フォルダに設定していく必要がある。

1-5-2 DOCSの設定
DOCSは、念のためチェックをはずす。

*参考:Searchにpythonを入れる。pythonは不要なのでチェックをはずしておく。
このコンパイルをする前にpythonのopencvをコマンドラインからインストールするとこの後のmakeでエラーが発生する?不明。

*試していないのでわかりませんが、CUDAのチェックをはずしておかないと、対応していないデバイスでは動作しないかもしれません。私の環境は残念ながらCUDAを使えないので、チェックをはずしました。

1-5-3 その他設定
次にSerachに[CMAKE]を入力する。するとCMAKE関連のリストが表示される。この中でCMAKE_BUILD_TYPEをReleaseに設定します。
再度Configureを押して、エラーがでないことを確認する。
*下の画像はwindowsです。フォルダ名は上記の図中のフォルダ名と読み替えること。

1-6 Generate
上記のConfigureがGenerateを押す。
Gnerateがエラーなしで終了すると、where to build the binariesに設定したフォルダにファイルができている。
/home/XXXX/opencv3/release
1-7 make(compile)
上記の1-6の「release」フォルダで端末を開く
そして、コマンドライン(bash shellからmake -j2とコマンドを実行する。これで、makeが始まる。
*cpuパワーがあれば、make -j4でもよい
makeの終了時間はPCによって時間が変わる。古いPCだと数時間かかる。
エラー無しで終了すれば次はインストールとなる。
*インストール前は、「/home/XXXX/opencv3/release/bin」の下にリンク用のファイルができている。
1-8 インストール
インストールは、上記と同じくrelease(/home/XXXX/opencv3/release)のフォルダで端末を開いてコマンドラインからコマンドを入力してインストールする。
インストールのコマンドは以下である。
sudo make install
インストールコマンドを実行することで以下のフォルダにライブラリがインストールされる。
/usr/local/lib
*おそらく/home/aqua1410/opencv3/release/binのファイルがコピーさるのとエイリアスが設定されると思われる
1-9 インクルードファイル
インクルードファイルは以下である。
/usr/local/include
トップページに戻る