我是OpenCV的非常重要人物。我如何解決鏈接錯誤我的Visual C++ 2008與OpenCV?
我剛剛安裝了OpenCV並使C++程序如下。
我的編譯器是VISUAL C++ 2008
# include "highgui.h"
void main() {
IplImage* img = cvLoadImage("C:/OpenCV/samples/cpp/tutorial_code/images/lena.png",-1);
cvNamedWindow("lena",0);
cvShowImage("lena",image);
cvWaitKey(0);
cvReleaseImage(&image);
}
但它無法與錯誤信息來構建的,我解決不了這個問題。
錯誤消息如下。
(我的編譯器是韓文版,我的錯誤信息翻譯成英文。 和英文很差,但你可以理解它是如何處理的。)
1>------ begin build: project: image1st,: Debug Win32 ------
1> compiling)
1>image1st.cpp
1>c:\vs2008\ccp_file\image1st\image1st.cpp(17) : warning C4700: not inetialized ‘image’ use local variable
1>Microsoft (R) Windows (R) Resource Compiler Version 6.1.6723.1
1>Copyright (C) Microsoft Corporation. All rights reserved.
1>linking
1>image1st.obj : error LNK2019: _cvReleaseImage External Symbol(refrence positon: _main function) not defined.
1> image1st.obj : error LNK2019: _cvWaitKey External Symbol(refrence positon: _main function)not defined.
1> image1st.obj : error LNK2019: _cvShowImage External Symbol(refrence positon: _main function)not defined.)
1> image1st.obj : error LNK2019: _cvNamedWindow External Symbol(refrence positon: _main function)not defined.)
1>image1st.obj : error LNK2019: _cvLoadImage External Symbol(refrence positon: _main function)not defined.)
1>project: warning PRJ0018 : can not find the next environment variable.
1>$(OPENCV_DIR)
1>image1st – errors: 6, warning: 1
我修改了Visual C++環境如下修改。
我輸入「$(OPENCV_DIR)\包括」中的「附加包含目錄」條目,
,使「附加依賴」條目包括下一個的.lib文件OpenCV的教程 2.3版指南。
- 'opencv_core231d.lib'
- 'opencv__imgproc231d.lib'
- 'opencv__highgui231d.lib'
- 'opencv__ml231d.lib'
- 'opencv__video231d.lib'
- 「opencv__features2d231d.lib '
- 'opencv__calib3d231d.lib'
- 'opencv__objdetect231 d.lib」
- ‘opencv__contrib231d.lib’
- ‘opencv__legacy231d.lib’
- ‘opencv__flann231d.lib’
而且包括和Visual C++環境的庫目錄被修改如下。
對於庫:
- $(VSInstallDir)LIB
- $(VSInstallDir)
- $(FrameworkSDKDir)LIB
- $(WindowsSdkDir)\ LIB
- $(VCInstallDir)atlmfc \ lib \ i386
- $(VCInstallDir)atlmfc \ lib
- $(VCInstallDir)lib
- C:\的OpenCV \建立\ 86 \ VC10 \ lib中//改性
- C:\的OpenCV \建立\ 86 \ VC9 \ lib中//改性
- C:\的OpenCV \建立\ 64 \ VC10 \ LIB //改性
- C:\的OpenCV \建立\ 64 \ VC9 \ lib中//改性
- C:\的OpenCV \建立\ GPU \ 86 \ lib中//改性
- C:\的OpenCV \建立\ GPU \ 64 \ lib中//改性
對於包括:
- $(VCInstallDir)atlmfc \包括
- $(WindowsSdkDir)\包括
- $(FrameworkSDKDir)包括
- $(VCInstallDir)包括
- C:\的OpenCV \構建\包括\的OpenCV /的/修改的
- C:\的OpenCV \構建\包括\ opencv2 //改性
- C:\的OpenCV \建立\包括//改性
庫名稱是怪異。尋找名稱類似於cvaux的.lib。 –