OpenCVライブラリビルドにおけるVisualStudio2008とVisualStudio2010の非互換性

2008でビルドしたOpenCV2.0(OpenMP使用)のDLLが2010でも使えるかな・・と少し期待して使ってみたがかなりわかりづらいランタイムエラーが出るのであきらめてVS2010でOpenCVをビルドしてみたところ正常に動作。ぜんぜん別物と考えたほうがいいようだ。
このランタイムエラーは相当わかりづらく、ATL::CImage関連の処理で落ちているようにデバッガが表示したりするものもある。なので一見ATLやMFC周りのランタイムエラーかな?などと思ってしまうが違う。 非常に混乱しやすいと思うが、ブレークポイントなどを使って泥臭く流れを追ってみるとちゃんとOpenCV周りの処理で落ちているので気づけないLvではない。まぁ環境を2008から2010に変えて同じライブラリを使うと起こるランタイムエラーという条件がそろっているのだから真っ先にDLLを疑うのは当然の推理だけど。
難解なケースでもないが少しも面白くない作業。