divire をソースからビルドする(技術者向け)
こちらの記事では、divire をソースコードからビルドする方法について解説します。
※ こちらの記事は「技術者向け記事」になります。
目次
divire のソースコードの入手
divire のソースコードについては、GitHub のリポジトリから入手してください。
divire のリポジトリの URL : https://github.com/arunanika/divire
ビルド方法は、基本的にこの divire のリポジトリの README.md に記載した通りです。
- Visual Studio 2017 を「 .NET デスクトップ開発」、「 C++ デスクトップ開発」コンポーネントを含めてインストールする。
- OpenCV のソースコード(バージョン 4.3.0)を公式サイトからダウンロードする。
- Visual Stuio 2017 、64bit 向けの OpenCV ソリューションを CMake で作成(スタティックリンクを指定)。
- 作成した OpenCV ソリューション(OpenCV.sln)を Visual Studio で開いて、INSTALL プロジェクトをビルドする。
- divire のリポジトリの直下に次のようなパスのフォルダを用意する。【divire リポジトリのルートフォルダ】\packages\opencv\install
- 「手順 4」 で OpenCV ソリューションを作成したフォルダ内の install フォルダから、「手順 5」 で作成した install フォルダに、include フォルダと、x64 フォルダをコピーする。
- divire リポジトリ直下の ColoringTrial.sln を Visual Studio で開いて、ソリューションのターゲットプラットフォームを x64 にしてビルドする。
README.md ではざっくり書いてしまっていて、多少わかりづらい部分もあるかもしれませんので、この記事では以下、図を交えながら解説していきます。
該当バージョンの OpenCV を入手
divire のビルドには、 OpenCV のライブラリ(現時点ではバージョン 4.3.0 を使用)が必要です。
OpenCV の公式サイトから、ソースコードを入手します。
OpenCV の公式サイト : https://opencv.org/
以下のスクリーンショットは上記 URL からの引用です。
トップページからですと、左上の Releases から該当のバージョンを探して Sources をダウンロードします。
ダウンロードしたソースコードの zip ファイルを適当なフォルダに展開しておきます。
divire ではプログラム配布の便を考慮し、 OpenCV をスタティックリンクライブラリとして指定しています。以下、Visual Studio 向けに OpenCV のスタティックリンクライブラリを作成する方法について解説します。
OpenCV のスタティックリンクライブラリの作成
CMake を開き、ソースコード欄に先ほど作成した OpenCV のソースコードのフォルダを指定し、ビルド先の欄にも適当なフォルダを作成して指定しておきます。
Configure ボタンを押すと下記のようなウィンドウが表示されるので、生成対象を所定の Visual Studio プロジェクトの設定に変更します。
Configure を実行すると、 OpenCV のオプション設定がズラッと表示されます。
今回はスタティックリンクライブラリを作成するので、 BUILD_SHARED_LIBS のチェックを OFF にしてから Generate ボタンを押します。 Generate 完了後、ビルド先のフォルダ直下に、指定した Visual Studio 向けの OpenCV のソリューション( OpenCV.sln )が作成されます。
Visual Studio で OpenCV.sln を開き、CMakeTargets フォルダ内の INSTALL プロジェクトをビルドします。
INSTALL プロジェクトのビルドが完了すると、OpenCV のソリューションのあるフォルダと同階層に、「 install 」 フォルダが作成され、このフォルダ内の x64 フォルダにスタティックリンクライブラリ群が、include フォルダに各種インクルードファイルが生成されます。
divire のソリューションを Visual Studio でビルドする
divire のソリューションは、リポジトリ直下の ColoringTrial.sln になります。
これを Visual Studio で開いてビルドするためには、OpenCV のインクルードファイルとスタティックリンクライブラリが必要です。まず、divire ソリューションのルートフォルダ以下に、次のようなパスになるフォルダを作成します。
【divire リポジトリのルートフォルダ】\packages\opencv\install
この「 install 」 フォルダ内に、さきほど OpenCV のソリューションの INSTALL プロジェクトをビルドした後作成された「 install 」 フォルダの中の x64 および include フォルダをコピーします。
このあと、ColoringTrial.sln を Visual Studio で開き、ソリューションのターゲットプラットフォームを x64 にしてから(Any CPU は不可)ビルドしてください。
divire の実行ファイルおよび DLL が、ColoringTrial.sln と同階層の Application フォルダ以下に生成されます。
まとめ
divire をソースからビルドする方法について解説しました。
Visual Studio と CMake があれば、多分ビルドできると思いますので、興味のある方は試してみて下さい。
なにかアイデアがあるようでしたら、ぜひ divire をカスタマイズしてみて下さい。divire のライセンスは MIT ライセンスにしておりますので、著作権表記「 Copyright (C) 2020 Aru Nanika 」に注意していただければ、独自の改造バージョンを公開していただいても構わないと私は思っております。