Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.
6766 Discussions

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

oliverwreath
Beginner
824 Views

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
824 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

0 Kudos
3 Replies
Vladimir_Dudnik
Employee
825 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
0 Kudos
oliverwreath
Beginner
823 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 ?

0 Kudos
oliverwreath
Beginner
824 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.

0 Kudos
Reply