Community
cancel
Showing results for 
Search instead for 
Did you mean: 
oliverwreath
Beginner
140 Views

CV2.2 fatal error LNK1104 ( IPP 7.0, VS2010, CV2.2, CMake2.84 )

Jump to solution

1)
the following librariesare missing(from OpenCV2.2)

cv200.lib

cxcore200.lib

highgui200.lib

they cause LINK errors (1104) as below:

1>LINK : fatal error LNK1104: can not open cv200.lib

and there's a opencv_highgui220d.lib looks similar

2) moreover,

there arelibs with a 'd' ending like "opencv_highgui220d.lib'' in the "lib\\Debug" folder

and all of them appear again right in the "lib\\" folder

so, what is the difference between them?


any help is appreciated,
thank you for your time.

0 Kudos
1 Solution
Vladimir_Dudnik
Employee
140 Views
In OpenCV 2.x naming of libraries has been changed. Below is the list of libraries available in precompiled OpenCV 2.2 package:

opencv_calib3d220.lib
opencv_calib3d220d.lib
opencv_contrib220.lib
opencv_contrib220d.lib
opencv_core220.lib
opencv_core220d.lib
opencv_features2d220.lib
opencv_features2d220d.lib
opencv_ffmpeg220.lib
opencv_ffmpeg220d.lib
opencv_flann220.lib
opencv_flann220d.lib
opencv_gpu220.lib
opencv_gpu220d.lib
opencv_highgui220.lib
opencv_highgui220d.lib
opencv_imgproc220.lib
opencv_imgproc220d.lib
opencv_legacy220.lib
opencv_legacy220d.lib
opencv_ml220.lib
opencv_ml220d.lib
opencv_objdetect220.lib
opencv_objdetect220d.lib
opencv_ts220.lib
opencv_video220.lib
opencv_video220d.lib

When you rebuild OpenCV you can do debug or release build. In debug build letter 'd' is added to the libraries name.

Regards,
Vladimir

View solution in original post

3 Replies
Vladimir_Dudnik
Employee
141 Views
In OpenCV 2.x naming of libraries has been changed. Below is the list of libraries available in precompiled OpenCV 2.2 package:

opencv_calib3d220.lib
opencv_calib3d220d.lib
opencv_contrib220.lib
opencv_contrib220d.lib
opencv_core220.lib
opencv_core220d.lib
opencv_features2d220.lib
opencv_features2d220d.lib
opencv_ffmpeg220.lib
opencv_ffmpeg220d.lib
opencv_flann220.lib
opencv_flann220d.lib
opencv_gpu220.lib
opencv_gpu220d.lib
opencv_highgui220.lib
opencv_highgui220d.lib
opencv_imgproc220.lib
opencv_imgproc220d.lib
opencv_legacy220.lib
opencv_legacy220d.lib
opencv_ml220.lib
opencv_ml220d.lib
opencv_objdetect220.lib
opencv_objdetect220d.lib
opencv_ts220.lib
opencv_video220.lib
opencv_video220d.lib

When you rebuild OpenCV you can do debug or release build. In debug build letter 'd' is added to the libraries name.

Regards,
Vladimir

View solution in original post

oliverwreath
Beginner
140 Views

hmm, so when doing debug build in CV project, onemust use the libraries with a 'd' ?

and use the libraries without a 'd' when doing release build ?

oliverwreath
Beginner
140 Views

hi,

after a series of tring, I added the following cv libraries:

(path)E:\DOT\OpenCV2.2_IPP7.0\lib

opencv_calib3d220d.lib;

opencv_contrib220d.lib

opencv_ffmpeg220d.lib

opencv_gpu220d.lib

opencv_haartraining_engine.lib

opencv_ts220d.lib;

opencv_core220d.lib;

opencv_imgproc220d.lib;

opencv_features2d220d.lib;

opencv_objdetect220d.lib;

opencv_video220d.lib;

opencv_highgui220d.lib;

opencv_legacy220d.lib;

opencv_flann220d.lib;

opencv_ml220d.lib;

P.S. the file opencv_haartraining_engine.lib was cpied from debug folder to lib folder.

(path)E:\DOT\OpenCV2.2_IPP7.0\3rdparty\lib

libjpegd.lib;

libpngd.lib;

libtiffd.lib;

libjasperd.lib;

opencv_lapackd.lib;

zlibd.lib;

(path)E:\DOT\OpenCV2.2_IPP7.0\3rdparty\lib

videoInput.lib;

and the following ipp libraries:

path(E:\Program Files\Intel\ComposerXE-2011\ipp\lib\ia32)

ippm.lib;ippcv.lib;ippi.lib;ipps.lib;ippCore.lib;

and unexpected link errors occured:

unresolved external symbol 'symbol' referenced in function

1>LINK : warning LNK4098: default library MSVCRT conflicts with other libraries, please use /NODEFAULTLIB:library

1>opencv_core220d.lib(mathfuncs.obj) : error LNK2019: unresolved external symbol _ippsExp_64f_A50@12referenced in function "void __cdecl cv::exp(class cv::Mat const &,class cv::Mat &)" (?exp@cv@@YAXABVMat@1@AAV21@@Z)

1>opencv_core220d.lib(mathfuncs.obj) : error LNK2019: unresolved external symbol _ippsExp_32f_A21@12referenced in function "void __cdecl cv::exp(class cv::Mat const &,class cv::Mat &)" (?exp@cv@@YAXABVMat@1@AAV21@@Z)

1>opencv_core220d.lib(mathfuncs.obj) : error LNK2019: unresolved external symbol _ippsLn_64f_A50@12referenced in function "void __cdecl cv::log(class cv::Mat const &,class cv::Mat &)" (?log@cv@@YAXABVMat@1@AAV21@@Z)

1>opencv_core220d.lib(mathfuncs.obj) : error LNK2019: unresolved external symbol _ippsLn_32f_A21@12referenced in function "void __cdecl cv::log(class cv::Mat const &,class cv::Mat &)" (?log@cv@@YAXABVMat@1@AAV21@@Z)

1>opencv_highgui220d.lib(window_w32.obj) : error LNK2019: unresolved external symbol __imp__CreateToolbarEx@52referenced in function "int __cdecl icvCreateTrackbar(char const *,char const *,int *,int,void (__cdecl*)(int),void (__cdecl*)(int,void *),void *)" (?icvCreateTrackbar@@YAHPBD0PAHHP6AXH@ZP6AXHPAX@Z3@Z)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _AVIFileRelease@4referenced in function "public: virtual void __thiscall CvCaptureAVI_VFW::close(void)" (?close@CvCaptureAVI_VFW@@UAEXXZ)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _AVIStreamRelease@4referenced in function "public: virtual void __thiscall CvCaptureAVI_VFW::close(void)" (?close@CvCaptureAVI_VFW@@UAEXXZ)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _AVIStreamGetFrameClose@4referenced in function "public: virtual void __thiscall CvCaptureAVI_VFW::close(void)" (?close@CvCaptureAVI_VFW@@UAEXXZ)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _AVIStreamGetFrameOpen@8referenced in function "public: virtual bool __thiscall CvCaptureAVI_VFW::open(char const *)" (?open@CvCaptureAVI_VFW@@UAE_NPBD@Z)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _AVIStreamInfoA@12referenced in function "public: virtual bool __thiscall CvCaptureAVI_VFW::open(char const *)" (?open@CvCaptureAVI_VFW@@UAE_NPBD@Z)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _AVIFileGetStream@16referenced in function "public: virtual bool __thiscall CvCaptureAVI_VFW::open(char const *)" (?open@CvCaptureAVI_VFW@@UAE_NPBD@Z)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _AVIFileOpenA@16referenced in function "public: virtual bool __thiscall CvCaptureAVI_VFW::open(char const *)" (?open@CvCaptureAVI_VFW@@UAE_NPBD@Z)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _AVIFileInit@0referenced in function "void __cdecl icvInitCapture_VFW(void)" (?icvInitCapture_VFW@@YAXXZ)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _AVIStreamGetFrame@8referenced in function "public: virtual bool __thiscall CvCaptureAVI_VFW::grabFrame(void)" (?grabFrame@CvCaptureAVI_VFW@@UAE_NXZ)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _ICClose@4referenced in function "protected: void __thiscall CvCaptureCAM_VFW::closeHIC(void)" (?closeHIC@CvCaptureCAM_VFW@@IAEXXZ)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _ICSendMessage@16referenced in function "protected: void __thiscall CvCaptureCAM_VFW::closeHIC(void)" (?closeHIC@CvCaptureCAM_VFW@@IAEXXZ)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _capCreateCaptureWindowA@32referenced in function "public: virtual bool __thiscall CvCaptureCAM_VFW::open(int)" (?open@CvCaptureCAM_VFW@@UAE_NH@Z)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _capGetDriverDescriptionA@20referenced in function "public: virtual bool __thiscall CvCaptureCAM_VFW::open(int)" (?open@CvCaptureCAM_VFW@@UAE_NH@Z)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _ICDecompressreferenced in function "public: virtual struct _IplImage * __thiscall CvCaptureCAM_VFW::retrieveFrame(int)" (?retrieveFrame@CvCaptureCAM_VFW@@UAEPAU_IplImage@@H@Z)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _ICOpen@12referenced in function "public: virtual struct _IplImage * __thiscall CvCaptureCAM_VFW::retrieveFrame(int)" (?retrieveFrame@CvCaptureCAM_VFW@@UAEPAU_IplImage@@H@Z)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _AVIStreamSetFormat@16referenced in function "protected: bool __thiscall CvVideoWriter_VFW::createStreams(struct CvSize,bool)" (?createStreams@CvVideoWriter_VFW@@IAE_NUCvSize@@_N@Z)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _AVIMakeCompressedStream@16referenced in function "protected: bool __thiscall CvVideoWriter_VFW::createStreams(struct CvSize,bool)" (?createStreams@CvVideoWriter_VFW@@IAE_NUCvSize@@_N@Z)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _AVISaveOptions@20referenced in function "protected: bool __thiscall CvVideoWriter_VFW::createStreams(struct CvSize,bool)" (?createStreams@CvVideoWriter_VFW@@IAE_NUCvSize@@_N@Z)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _AVIFileCreateStreamA@12referenced in function "protected: bool __thiscall CvVideoWriter_VFW::createStreams(struct CvSize,bool)" (?createStreams@CvVideoWriter_VFW@@IAE_NUCvSize@@_N@Z)

1>opencv_highgui220d.lib(cap_vfw.obj) : error LNK2019: unresolved external symbol _AVIStreamWrite@32referenced in function "public: virtual bool __thiscall CvVideoWriter_VFW::writeFrame(struct _IplImage const *)" (?writeFrame@CvVideoWriter_VFW@@UAE_NPBU_IplImage@@@Z)

1>E:\Users\HunterX\Documents\Visual Studio 2010\Projects\DOT1.0\Debug\VISION.exe : fatal error LNK1120: 25 unresolved external symbols

1>

1>build fail

1>

1>time 00:00:06.68

========== all rebuild : suc 0 fail 1 skip 0 ==========

have i missed something?

highgui and core are members of the cv libraries, theycan not have such fatal errors, can they?

any help is appreciated,

thank you for your time.

Reply