#contents

*概要 [#s8b7a5d2]
-久しぶりにOpenCVをソースコードがビルドしてみる。
-ターゲットはWindows 7 (64bit)
-OpenCVのバージョンは2.4.8
-ビルド環境はVS2010
-CUDAのバージョンは5.5
-CMakeのバージョンは2.8.11.1
-よりによって2013年の大晦日にリリースされるとは!
-CMakeは、記事執筆時点(2014-01-01)で最新版は2.8.12.1

*パッケージのダウンロード [#j57e7d44]
-まずはパッケージのダウンロード。http://opencv.org/ から OpenCV for Windows をダウンロードする
-oepncv-2.4.8.exe というファイル名
--参考までにローカルのハッシュ値は
--MD5: 33C0A6787F9CC3A87009CFE4570D519B
--SHA-1: A31C54AF762AAF1377A2EA8A2B856F499A6EE739
--SHA-256: 0CF6AA4A37D004F55D7008F42CB65499FAA8BDFD4D044AB4DC5CAC4B1C55BB7B
-実行すると、展開場所を指定させられる
--指定したディレクトリ以下に、
--build
--sources
--の2つのディレクトリが作成される
-buildディレクトリ
--build済みのバイナリが入っている
--pythonディレクトリやjavaディレクトリがある。(中身は多分pythonとjava用のライブラリ)
--x86とx64ディレクトリがあり、それぞれ以下にvc10、vc11、vc12のディレクトリがある。
---vc10:Visual Studio 2010
---vc11:Visual Studio 2012
---vc12:Visual Studio 2013
---にそれぞれ対応する
-sourcesディレクトリ
--ビルドするためのソースコードなどがある
--今回はビルドするために、こちらを使う

*ビルド前準備 [#b2c32f9e]
-ビルドするためにsourcesディレクトリ以下を配置させたい場所に移動させる
-今回はc:\OpenCV2.4.8に配置する
-cmakeでソリューションファイルを作成する
-cmake(GUI版を起動する)
-Sourceの場所を指定する
--今回はC:/OpenCV2.4.8
-Buildの場所を指定する
--今回は C:/OpenCV2.4.8/build を指定する。
-Configureボタンを押す
-こんな感じ
#ref(cmake-configure.png)
-C:/OpenCV2.4.8/build が無いと文句を言われるので、ディレクトリの作成に同意する
-コンパイラのバージョンを聞かれるので、Visual Studio 2010を指定する
--違うコンパイラを指定する場合はここでターゲットを変更する
-しばらく待つと、ビルドの環境が表示される
-とりあえずEXAMPLESだけチェックを入れてもう1度Configureを押す
-CUDAのPATHとかがあると、自動で見つけてくれるらしい。
-Configureを何回か押して、不足してる項目が消えると、赤い項目が消えて、Generateボタンが有効になる。
-Generateボタンを押す
-C:\OpenCV2.4.8\build\OpenCV.sln が作成される。

*ソースコードのビルド [#s0088fe7]
-前のステップまでで生成されたOpenCV.sln を Visual Studio 2010で開く
-大量にプロジェクトが読み込まれるので、バッチビルドする。
-ビルド(B)→バッチビルド(T)でバッチビルド画面を出す
-バッチビルドでALL_BUILDのdebug/release両方を選択する
--いつの間にかTUTORIALSというプロジェクトファイルができている。どうチュートリアルなんだろう?
-そしてビルドをクリックする。
-後は待つ。

*トラブル [#o6668d8c]
-間違えて最初、全てのプロジェクトファイルをビルドしたので、その後ALL_BUILDをビルドしたらCMakeからメッセージが出た
-どうやら、ビルドしたせいでプロジェクトファイルの日付が狂ったようで、「リロードする?」ってメッセージが出ていた。
-なお、ビルド時、キャンセルしようにもなかなかキャンセルできなかったので、タスクマネージャからnvccをkillした。
--nvccはnVidiaのCUDA用コンパイラ

-[[OpenCV2.1と2.2に見るビルド方法の違い]]
-[[:OpenCV 2.4]]
-[[:OpenCV]]

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS