• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Visual Windows for BC++の設定方法を教えてください。)

Visual Windows for BC++でのリンクエラーの解決方法とは?

このQ&Aのポイント
  • Visual Windows for BC++でのリンクエラーが発生しています。リンクエラーの原因は、外部シンボルが未解決となっていることです。具体的には、'_cvLoadImage'、'_cvNamedWindow'、'_cvCloneImage'、'_cvGetSize'などが未解決です。libファイルの指定方法がわからないため、エラーが発生しています。解決するためには、libファイルを直接指定する必要があります。
  • Visual Windows for BC++でのリンクエラーの解決方法を教えてください。
  • Visual Windows for BC++を使用してプログラムをビルドしようとすると、リンクエラーが発生します。具体的には、'_cvLoadImage'、'_cvNamedWindow'、'_cvCloneImage'、'_cvGetSize'などの外部シンボルが未解決となっています。libファイルを直接指定する方法がわからないため、エラーが発生しています。リンクエラーを解決するには、libファイルを正しく指定する必要があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.2

インポートライブラリは IMPLIBで作成したのでしょうか ソースから再構築してもだめですか? プロジェクト > 設定 の オプション詳細の最後のほうに リンク時に結合: C:\BORLAND\Bcc55\OpenCV\lib\cv.lib C:\BORLAND\Bcc55\OpenCV\lib\highgui.lib C:\BORLAND\Bcc55\OpenCV\lib\cxcore.lib といった記述があればいいようですよ デバッグとリリースで参照するライブラリを変更するなら #pragma comment(lib,"ファイル名") を _DEBUGが設定されているかどうかを #ifdefなどでチェックしてみてください 規定で設定される _DEBUGなどは何かユーザー定義のマクロが無いと設定されないようです Visual Windows for BC++のバージョンはいくつでしょう? 当方は 2.16を使用しています

usatan2
質問者

お礼

ありがとうございます。 2つ目の >プロジェクト > 設定 の オプション詳細の最後のほうに >リンク時に結合: >C:\BORLAND\Bcc55\OpenCV\lib\cv.lib >C:\BORLAND\Bcc55\OpenCV\lib\highgui.lib >C:\BORLAND\Bcc55\OpenCV\lib\cxcore.lib >といった記述があればいいようですよ でうまくいきました!! これで、コマンドラインから bcc32 -WC -6 -Od -w- -AT -pc -H- -k -b -v -y -eDebug\proj2.exe Debug\opencv1.obj D:\OpenCV\lib\cv.lib D:\OpenCV\lib\cxcore.lib D:\OpenCV\lib\highgui.lib を叩いたときと同じようにビルドできるようになりました。

その他の回答 (1)

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

ライブラリは作成しなおしましたか? OpenCVで配布されているバイナリって MS-VC用だと思いますよ Borland-Cの場合はライブラリを再構築しないとだめだと思います OpenCVのインストールフォルダに _makeといったフォルダーがあります ここの中に make_all_bc.makを make.exeに対して -fオプションつきで与えてやります コマンドプロンプトで カレントフォルダを _makeにしておいて make -f make_all_bc.mak[enter] これで構築してから 再度コンパイル&リンクを行って見ましょう

usatan2
質問者

お礼

redfox63さん、またまた回答ありがとうございます。 >ライブラリは作成しなおしましたか? 作成しました。 BCC Developper ではビルドできるので、Visual Windows for BC++の問題だと思い、質問しました。 Visual Windows for BC++とは別のところに問題があるのでしょうか?