OpenCV 2.4.5のビルドでリンクエラーが出る場合の対処法
私の環境(WindowsXP、VisualStudio2010、OpenCV 2.4.5)ではうまくいった、という一例です。
出ていたリンカのエラーは↓下記です。
error LNK2019: 未解決の外部シンボル _cvReleaseImage が関数 _main で参照されました。
error LNK2019: 未解決の外部シンボル _cvWaitKey が関数 _main で参照されました。
error LNK2019: 未解決の外部シンボル _cvShowImage が関数 _main で参照されました。
error LNK2019: 未解決の外部シンボル _cvMoveWindow が関数 _main で参照されました。
error LNK2019: 未解決の外部シンボル _cvNamedWindow が関数 _main で参照されました。
error LNK2019: 未解決の外部シンボル _cvLoadImage が関数 _main で参照されました。
リンカの設定に、libのディレクトリとlibのファイル名を指定することで、うまくいきました。
ソリューション エクスプローラのプロジェクト名を右クリック
→プロジェクトのプロパティページ
-構成プロパティ
-リンカー
-全般 → 追加のライブラリディレクトリ
上記に
(あなたの環境のOpenCVの場所)\build\x86\vc10\lib
を指定します。
(パスに含まれている、アーキテクチャとかVisualStudioのバージョンとかの文字列は、お手元の環境に適宜合わせてください)
-構成プロパティ
-リンカー
-入力 → 追加の依存ファイル
に、さっき指定した「追加のライブラリディレクトリ」に入っているlibファイルをすべて指定する↓
つまり、下記をすべて指定しました。
opencv_calib3d245.lib
opencv_calib3d245d.lib
opencv_contrib245.lib
opencv_contrib245d.lib
opencv_core245.lib
opencv_core245d.lib
opencv_features2d245.lib
opencv_features2d245d.lib
opencv_flann245.lib
opencv_flann245d.lib
opencv_gpu245.lib
opencv_gpu245d.lib
opencv_haartraining_engine.lib
opencv_haartraining_engined.lib
opencv_highgui245.lib
opencv_highgui245d.lib
opencv_imgproc245.lib
opencv_imgproc245d.lib
opencv_legacy245.lib
opencv_legacy245d.lib
opencv_ml245.lib
opencv_ml245d.lib
opencv_nonfree245.lib
opencv_nonfree245d.lib
opencv_objdetect245.lib
opencv_objdetect245d.lib
opencv_photo245.lib
opencv_photo245d.lib
opencv_stitching245.lib
opencv_stitching245d.lib
opencv_superres245.lib
opencv_superres245d.lib
opencv_ts245.lib
opencv_ts245d.lib
opencv_video245.lib
opencv_video245d.lib
opencv_videostab245.lib
opencv_videostab245d.lib
上記を指定後に、ビルドしてみたところうまくいきました。
【補足&経緯】
第2回 OpenCVを使ってみよう:OpenCVで学ぶ画像認識|gihyo.jp … 技術評論社
上記に書いてある内容をベースにいろいろ試していたのですが、
続いて,「構成」を「Debug」に変更し,「リンカ」タブを展開した中の「入力」を選択し,「追加の依存ファイル」で"cxcore.lib cv.lib highgui.lib cvaux.lib"を追加します。
のところからうまくいかなかったんですよね。
というのも、自分がダウンロードしたOpenCVのファイルに
"cxcore.lib"
"cv.lib"
"highgui.lib"
"cvaux.lib"
などのファイルが含まれていなかったんです。
で、それっぽい感じがした ...\build\x86\vc10\lib\ の中身をリンクしてみたところ、うまくいったという次第。libのファイル名が変更されたんでしょうか(?)。
正直、自分はVisualStudioの開発環境やOpenCVに詳しいわけでもなんでもないので、このやり方が良い方法なのかどうかは、よくわかりません。
でも、上記「第2回 OpenCVを使ってみよう」のサンプルや、下記のサンプルは無事動かすことができました。
opencv.jp - OpenCV: 計算幾何(Computational Geometory)サンプルコード -
とりあえず、めでたしということで。
« ローラは障害者を嘲笑したのか(動画あり) | トップページ | 「GDAL」の読み方は「グードゥル」または「グーダル」(そして「ジーダル」でも「ジードール」でも可) »
「パソコン・インターネット」カテゴリの記事
- Adsenseの審査基準への違和感(2025.12.27)
- 楽天とAmazonのリンクをボタン風に埋め込むツールをChatGPTに作ってもらいました(2025.12.24)
- WEB MARTのパソコン割引権はやめておけ(2025.12.13)
- 知らぬ間に自分のブログが広告だらけになっていた話(2025.11.03)
- 記事数が少ないとAdsenseは承認されない(2025.10.05)
「日記・コラム・つぶやき」カテゴリの記事
- 生成AIの変な日本語に、昔の花火の注意書きを思い出す(2026.01.19)
- Happy New Ginger(2026.01.11)
- 早朝の品川、食肉市場前に大量のインド系観光客(2026.01.06)
- タヌキの徳利とホットワイン(2026.01.04)
- 寒川神社の良いとこ悪いとこ(2026.01.03)
« ローラは障害者を嘲笑したのか(動画あり) | トップページ | 「GDAL」の読み方は「グードゥル」または「グーダル」(そして「ジーダル」でも「ジードール」でも可) »



コメント