errors building from source with openCV

Sep 5, 2011 at 9:57pm
i'm trying to build this:

http://www.nist.gov/itl/iad/ig/vasir.cfm

from source. it require me to use openCV 1.0 to build it. the problems is that i keep getting linker errors similar to the following

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
1>Linking...
1>vasir.lib(CreateTemplate.obj) : error LNK2001: unresolved external symbol cvCloneImage
1>vasir.lib(FindEyelidMix.obj) : error LNK2001: unresolved external symbol cvCloneImage
1>vasir.lib(FindPupilCircleNew.obj) : error LNK2019: unresolved external symbol cvCloneImage referenced in function "int * __cdecl std::_Copy_backward_opt<int *,int *,struct std::random_access_iterator_tag>(int *,int *,int *,struct std::random_access_iterator_tag,struct std::_Scalar_ptr_iterator_tag,struct std::_Range_checked_iterator_tag)" (??$_Copy_backward_opt@PEAHPEAHUrandom_access_iterator_tag@std@@@std@@YAPEAHPEAH00Urandom_access_iterator_tag@0@U_Scalar_ptr_iterator_tag@0@U_Range_checked_iterator_tag@0@@Z)
1>YooIRIS.obj : error LNK2001: unresolved external symbol cvCloneImage
1>vasir.lib(ImageQuality.obj) : error LNK2001: unresolved external symbol cvCloneImage
1>vasir.lib(ImageUtility.obj) : error LNK2001: unresolved external symbol cvCloneImage
1>vasir.lib(EdgeDensity.obj) : error LNK2001: unresolved external symbol cvCloneImage
1>vasir.lib(CreateTemplate.obj) : error LNK2001: unresolved external symbol cvReleaseImage
1>vasir.lib(FindEyelidMix.obj) : error LNK2001: unresolved external symbol cvReleaseImage
1>vasir.lib(FindPupilCircleNew.obj) : error LNK2001: unresolved external symbol cvReleaseImage
1>vasir.lib(RotateIris.obj) : error LNK2001: unresolved external symbol cvReleaseImage
1>YooIRIS.obj : error LNK2019: unresolved external symbol cvReleaseImage referenced in function "private: void __cdecl YooIRIS::selectBestEye(struct _IplImage *,struct _IplImage * &,double &)" (?selectBestEye@YooIRIS@@AEAAXPEAU_IplImage@@AEAPEAU2@AEAN@Z)
1>vasir.lib(ImageQuality.obj) : error LNK2001: unresolved external symbol cvReleaseImage
1>vasir.lib(ImageUtility.obj) : error LNK2001: unresolved external symbol cvReleaseImage
1>vasir.lib(EdgeDensity.obj) : error LNK2001: unresolved external symbol cvReleaseImage
1>YooIRIS.obj : error LNK2019: unresolved external symbol "public: __cdecl CVVideoSource::CVVideoSource(char const *)" (??0CVVideoSource@@QEAA@PEBD@Z) referenced in function "private: void __cdecl YooIRIS::detectEyeRegion(char *)" (?detectEyeRegion@YooIRIS@@AEAAXPEAD@Z)
1>YooIRIS.obj : error LNK2019: unresolved external symbol cvLoadImage referenced in function "public: void __cdecl YooIRIS::checkQuality(void)" (?checkQuality@YooIRIS@@QEAAXXZ)
1>vasir.lib(CreateTemplate.obj) : error LNK2001: unresolved external symbol cvLoadImage
1>vasir.lib(EyeDetection.obj) : error LNK2019: unresolved external symbol cvLoad referenced in function "public: __cdecl EyeDetection::EyeDetection(char const *)" (??0EyeDetection@@QEAA@PEBD@Z)
1>vasir.lib(EyeDetection.obj) : error LNK2019: unresolved external symbol cvCreateMemStorage referenced in function "public: __cdecl EyeDetection::EyeDetection(char const *)" (??0EyeDetection@@QEAA@PEBD@Z)
1>vasir.lib(FindEyelidMix.obj) : error LNK2001: unresolved external symbol cvCreateMemStorage
1>vasir.lib(FindPupilCircleNew.obj) : error LNK2001: unresolved external symbol cvCreateMemStorage
1>vasir.lib(EyeDetection.obj) : error LNK2019: unresolved external symbol cvReleaseMemStorage referenced in function "public: virtual __cdecl EyeDetection::~EyeDetection(void)" (??1EyeDetection@@UEAA@XZ)
1>vasir.lib(FindEyelidMix.obj) : error LNK2001: unresolved external symbol cvReleaseMemStorage
1>vasir.lib(FindPupilCircleNew.obj) : error LNK2001: unresolved external symbol cvReleaseMemStorage
1>vasir.lib(EyeDetection.obj) : error LNK2019: unresolved external symbol cvFree_ referenced in function "public: virtual __cdecl EyeDetection::~EyeDetection(void)" (??1EyeDetection@@UEAA@XZ)
1>vasir.lib(EyeDetection.obj) : error LNK2019: unresolved external symbol cvGetSeqElem referenced in function "public: struct EyeDetection::RESULT * __cdecl EyeDetection::detect(struct _IplImage *,int,int)" (?detect@EyeDetection@@QEAAPEAURESULT@1@PEAU_IplImage@@HH@Z)
1>vasir.lib(EyeDetection.obj) : error LNK2019: unresolved external symbol cvHaarDetectObjects referenced in function "public: struct EyeDetection::RESULT * __cdecl EyeDetection::detect(struct _IplImage *,int,int)" (?detect@EyeDetection@@QEAAPEAURESULT@1@PEAU_IplImage@@HH@Z)
1>vasir.lib(EyeDetection.obj) : error LNK2019: unresolved external symbol cvClearMemStorage referenced in function "public: struct EyeDetection::RESULT * __cdecl EyeDetection::detect(struct _IplImage *,int,int)" (?detect@EyeDetection@@QEAAPEAURESULT@1@PEAU_IplImage@@HH@Z)
1>vasir.lib(FindPupilCircleNew.obj) : error LNK2001: unresolved external symbol cvClearMemStorage
1>vasir.lib(ImageUtility.obj) : error LNK2019: unresolved external symbol cvDestroyWindow referenced in function "public: static void __cdecl ImageUtility::showImage(char const *,struct _IplImage *)" (?showImage@ImageUtility@@SAXPEBDPEAU_IplImage@@@Z)
1>vasir.lib(ImageUtility.obj) : error LNK2019: unresolved external symbol cvWaitKey referenced in function "public: static void __cdecl ImageUtility::showImage(char const *,struct _IplImage *)" (?showImage@ImageUtility@@SAXPEBDPEAU_IplImage@@@Z)
1>vasir.lib(ImageUtility.obj) : error LNK2019: unresolved external symbol cvShowImage referenced in function "public: static void __cdecl ImageUtility::showImage(char const *,struct _IplImage *)" (?showImage@ImageUtility@@SAXPEBDPEAU_IplImage@@@Z)
1>vasir.lib(ImageUtility.obj) : error LNK2019: unresolved external symbol cvNamedWindow referenced in function "public: static void __cdecl ImageUtility::showImage(char const *,struct _IplImage *)" (?showImage@ImageUtility@@SAXPEBDPEAU_IplImage@@@Z)
1>vasir.lib(ImageUtility.obj) : error LNK2019: unresolved external symbol cvEllipse referenced in function "public: static void __cdecl ImageUtility::showCircles(char const *,struct _IplImage *,char const *,struct CvPoint,int,struct CvPoint,int,int *,double *)" (?showCircles@ImageUtility@@SAXPEBDPEAU_IplImage@@0UCvPoint@@H2HPEAHPEAN@Z)
1>vasir.lib(FindEyelidMix.obj) : error LNK2001: unresolved external symbol cvEllipse
1>vasir.lib(ImageUtility.obj) : error LNK2019: unresolved external symbol cvCircle referenced in function "public: static void __cdecl ImageUtility::showCircles(char const *,struct _IplImage *,char const *,struct CvPoint,int,struct CvPoint,int,int *,double *)" (?showCircles@ImageUtility@@SAXPEBDPEAU_IplImage@@0UCvPoint@@H2HPEAHPEAN@Z)
1>vasir.lib(FindPupilCircleNew.obj) : error LNK2001: unresolved external symbol cvCircle

[...]

1>C:\Users\Josh\Downloads\src_vasir_beta1.0\/debug/YooIRIS.exe : fatal error LNK1120: 34 unresolved externals


i've literally dug through the directory and added every subdir with a source header or lib file in it to my source/header/lib include in VS 2008 and i still get these errors. googling has been of very little help so far

i have experience programming in C++ and after all this i know my way around VS, but i've no experience building the code of others and no experience with openVC

any ideas where i can start?

(i only posted a part of the error messages so the my post is not too long, but they are all of the "unresolved external" variety)
Sep 6, 2011 at 12:05am
update:

i've eliminated all of the unresolved external errors except for CVVideoSource. any idea what lib this is a part of?
Sep 6, 2011 at 12:22am
and i got it. carry on.

edit: if anyone is curious, the documentation was wrong. libraries from openCV 1.0 and openCV 2.3 were required to be able to link successfully
Last edited on Sep 6, 2011 at 12:24am
Topic archived. No new replies allowed.