• 締切済み

C++Builder XE とOpenCV

長年C++Builderでプログラムを書いていますが、いつも全体をコピーして必要な所を変更しているので、開発環境の作成には自信の無い者です。 背景 昨年来、OpenCVとDirect-Xでカメラと画像のプログラムを開発していました。 今年2月にC++ Builder V5 とOpenCV V1.0 Direct-X9 で目的の動作をするものが完成しました。 W.2000とW.XPが対象ならばこれで良いのですが、世の中のOSがW.7に移っており、古いOSのPCの販売も無くなって来ている所から、W.7への乗せ替えを計画しました。 なお、OpenCV V1.0を使用しているのは、OpenCVでの開発開始当時、V2も試したのですが、V1.0でしかうまくコンパイル出来なかった為です。 問題点 新しい開発環境はOS W.7にC++Builder XEを搭載しました。 Builder V5に比べ、XEは文字コードがUniCodeに成っている等、文法エラーが多発していましたが、やっと文法エラーが無くなり、コンパイルが終了しました。 ここで実行させようとした所、cvhaartraining.dll がありませんとのメッセージが表示されてしまいました。 このメッセージはW.XP と C++Builder V5でコンパイル、実行させた時には出なかったものです。 更に、ダウンロードしたOpenCV1.0にはcvhaartraining.dllが含まれて居ませんでした。 ただ、cvhaartraining.cpp、cvhaartraining.lib 、cvhaartraining.h は含まれていました。 ネットでcvhaartraining.dllを検索して見ましたが、見つかりませんでした。 そこで、cvhaartraining.cpp、cvhaartraining.lib 、cvhaartraining.h があるのですから、これからDLLを作るか、プログラムが動作すれば良いのですから、プログラムに組み込んだり出来ないでしょうか。 先に述べた様に、開発環境やプログラム構造を変えた経験は殆ど無いのですが、この問題の解決策があれば挑戦して見たいと思って降ります。 解決策お分かりに成る方が居られましたら宜しくお教え下さい。

みんなの回答

回答No.1

基本的には、 方法1 プロジェクトに cvhaartraining.cpp を追加する。 方法2 プロジェクトに cvhaartraining.lib を追加する。 のいずれかになります。 ただ、現状のプロジェクトが、cvhaartraining.dll を見に行くとしたら、見に行くような指定がどこかでしてあるはずですが。 現時点で、cvhaartraining.lib がプロジェクトにあるようでしたら、それを外して、.cpp を付け加えてみると、もしかしたらいいかもしれません。

TinyPine
質問者

お礼

ご回答ありがとうございます。 libはプロジェクトに入れてコンパイルして見ましたがだめでした。 明日、cppも試してみます。 >見に行くような指定がどこかでしてあるはずですが。 DLLの事も良く知らないので、昨日、今日とDLLの作り方を調べて居ました。 Inport等の記述かせありましたので、cppを取り込んで、Inportの記述を探して外してしまえば良いわけですよね、プロジェクト内にソースが入っているんですから。 明日、解決すると良いのですが・・・

関連するQ&A