OpenCVを始めたこの頃。外部ライブラリを取り込んでデバッグするには、パスやデバッグ用のビルドファイルをVisualStudioに教えてあげなきゃいけないことを知り、大いに驚いています!!(当たり前ダゾッ
さておき、書き留めていきましょうか。
###1. プロパティシートとは?
OpenCVをVisualStudioに組み込むにあたって、パスやデバッガの設定をするのは面倒です。しかも、プロジェクトを新しく作るたびにやらなきゃいけないんですよね。やることごとにプロジェクトを分けたい! って考える私としては、死活問題でした。そこで、このプロパティを使いまわせる機能を探していたのですが……ありました! プロパティシートというものを使えば、設定を使いまわせるようです!
凄く便利そうですよね? ですがコイツ、大変クセがありました。今回は仕様の理解にかなりの時間を持っていかれたので、記録しておくことにします。これからプロパティシートを使う、という人は注意してくださいね。
###2. 使い方(要注意!)
プロパティシートの作成は簡単です。
- VisualStudioで、[表示]→[その他のウィンドウ]→[プロパティマネージャー]と選択する
- 出てきたウィンドウのプロジェクト部分を右クリック
- 新しいプロジェクト プロパティシートの追加
- 適当な名前と保存場所を選んで保存する
これだけです。特にむつかしいことはありません。
逆に、新しいプロジェクトにプロパティを反映させるときも、同じような手順になります。
- VisualStudioで、[表示]→[その他のウィンドウ]→[プロパティマネージャー]と選択する
- 出てきたウィンドウのプロジェクト部分を右クリック
- 既存のプロパティシートの追加
- 先ほど追加したプロティシートを選択する。
以上です。
###がっ!!!
実はこれでは設定は反映されていません! 理由は単純です。手順4で作ったプロパティシートは、__完全初期状態のプロパティシート__だからです!
いやいや、既存のプロジェクトから作ったのに、なぜ反映されとらんねん! と突っ込みたくなりますが、調べても既存の設定をエクスポートする機能は出てきませんでした。
なので、手順4の後に、以下のことをしなければなりません。
4.1. プロパティマネージャーの隠しボックスを開いて、なんでもいいのでその下の隠しボックスを開く
4.2. 手順4で追加した名前のファイルが入っているので、それを右クリック(画像の右側の奴です)
4.3. プロパティの設定をし直す()
これで初期状態のファイルが反映され、新しいプロジェクトでもプロパティが更新されます。
ただ、まだ注意点があります。それは、デバッグとリリースごとの設定ができないこと。
大きなライブラリは基本、デバッグ用とリリース用で違うビルドファイルが用意されていることが多いそうです(リリース用は無駄な機能を省いて、軽くて速いらしい)。この2つを分けて設定できないので、ここでけは新しいプロジェクトで設定し直さなきゃいけないみたいです。
……面倒ですが、まあ位置から設定しなおすよりかは100倍マシでしょうね。
以上になります。