Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compile in windows #12

Open
metropt opened this issue May 2, 2011 · 24 comments
Open

Compile in windows #12

metropt opened this issue May 2, 2011 · 24 comments

Comments

@metropt
Copy link

metropt commented May 2, 2011

First i installed opencv from here: http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.2/OpenCV-2.2.0-win32-vs2010.exe/download and selected 'add path to variables.'
Second i wrote 'mex -setup' and select Visual studio 2010.

Finally i open the source folder in Matlab, run the file compile.m and got:

´PC
lk.cpp
c:\program files\matlab\r2011a\extern\include\matrix.h(337) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
lk.cpp(175) : warning C4244: '=' : conversion from 'double' to 'float', possible loss of data
lk.cpp(175) : warning C4244: '=' : conversion from 'double' to 'float', possible loss of data
lk.cpp(176) : warning C4244: '=' : conversion from 'double' to 'float', possible loss of data
lk.cpp(176) : warning C4244: '=' : conversion from 'double' to 'float', possible loss of data
lk.cpp(177) : warning C4244: '=' : conversion from 'double' to 'float', possible loss of data
lk.cpp(177) : warning C4244: '=' : conversion from 'double' to 'float', possible loss of data

C:\PROGRA~1\MATLAB\R2011A\BIN\MEX.PL: Error: Compile of 'lk.cpp' failed.

??? Error using ==> mex at 208
Unable to complete successfully.

Error in ==> compile at 32
eval(['mex lk.cpp -O' include lib]);

@ustczhouxin
Copy link

I have the same problem. Is there anyone know why?

@bawNg
Copy link

bawNg commented May 15, 2011

Same here, I hope someone knows why

@duyhunghd6
Copy link

hi all!

to correct this error!

you open c:program filesmatlabr2011aexternincludematrix.h

add this line in to file matrix.h (locate in mahlab_install_folder\extern\include)

#pragma warning (disable:4430)

contact me if you can't do this

Yahoo: buiduyhung2007
Email: duyhunghd6@gmail.com
Fone: +84 166 666 7975

@rayryeng
Copy link

Actually you should avoid doing that. Modifying the actual MEX MATLAB libraries is NOT recommended. If you get this issue, go into the following files: lk.cpp, fern.cpp, and bb_overlap.cpp, and comment out these lines of code:

#ifdef _CHAR16_T

#define CHAR16_T

#endif

Once you do that, try compiling it again. These were written in the installation directions on this wiki:

https://github.com/zk00006/OpenTLD/wiki/Installation

Hope this helps,

  • Ray.

@rayryeng
Copy link

rayryeng commented Jul 5, 2011

Dear Vicy,

This means that the WORKING DIRECTORY in MATLAB is not set to where the
source code of the Predator algorithm is contained. Go to the top of your
MATLAB window, and change the directory so that it is pointing to the source
code. Uncomment the code and try again... it should works. Works for me!

Hope this helps,

  • Ray.

On Tue, Jul 5, 2011 at 3:10 AM, waczkor <
reply@reply.github.com>wrote:

I have a same problem. I checked the comple.m again and it seems okay. I
commented out the mentioned lines of the code, and tried to comple again.
That didn't helped.
If i run the run_TLD :
??? Undefined function or method 'lk' for input arguments of type 'double'.

Error in ==> tldInit at 20
lk(0);

Error in ==> tldExample at 34
tld = tldInit(opt,[]); % train initial detector and initialize the 'tld'
structure

Error in ==> run_TLD at 42
[bb,conf] = tldExample(opt);

Could someone help me, please?
Vicy

Reply to this email directly or view it on GitHub:
#12 (comment)

@waczkor
Copy link

waczkor commented Jul 5, 2011

And this? PC
Creating library C:\USERS\WACZKOR\APPDATA\LOCAL\TEMP\MEX_2N1\templib.x and object C:\USERS\WACZKOR\APPDATA\LOCAL\TEMP\MEX_2N1\templib.exp
lk.obj : error LNK2019: unresolved external symbol cvReleaseImage referenced in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float *,int,int)" (?normCrossCorrelation@@YAXPEAU_IplImage@@0PEAUCvPoint2D32f@@1HPEADPEAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol cvMatchTemplate referenced in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float *,int,int)" (?normCrossCorrelation@@YAXPEAU_IplImage@@0PEAUCvPoint2D32f@@1HPEADPEAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol cvGetRectSubPix referenced in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float *,int,int)" (?normCrossCorrelation@@YAXPEAU_IplImage@@0PEAUCvPoint2D32f@@1HPEADPEAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol cvCreateImage referenced in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float *,int,int)" (?normCrossCorrelation@@YAXPEAU_IplImage@@0PEAUCvPoint2D32f@@1HPEADPEAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol cvCalcOpticalFlowPyrLK referenced in function mexFunction
lk.obj : error LNK2019: unresolved external symbol cvAlloc referenced in function mexFunction
lk.mexw64 : fatal error LNK1120: 6 unresolved externals

E:\PROGRA~1\MATLAB\BIN\MEX.PL: Error: Link of 'lk.mexw64' failed.

??? Error using ==> mex at 222
Unable to complete successfully.

Error in ==> compile at 32
eval(['mex lk.cpp -O' include lib]);

If I run run_TLD.m i got this:
??? Index exceeds matrix dimensions.

Error in ==> tldInitFirstFrame at 21
source.im0 = img_get(source,source.idx(1));

Error in ==> tldExample at 30
source = tldInitFirstFrame(tld,opt.source,opt.model.min_win); % get initial bounding box, return 'empty' if
bounding box is too small

Error in ==> run_TLD at 42
[bb,conf] = tldExample(opt);

and an empty window in matlab named Figure2.

Please please help me.

@rayryeng
Copy link

rayryeng commented Jul 5, 2011

Aha,

You weren't telling me the whole story! Because you're compiling in 64-bit
windows, you need to CREATE NEW OpenCV libraries so that they are compatible
with your OS. The binaries you download online that which are the simple
installation scripts are ONLY for 32-bit. If you want to compile under
64-bit, you need to follow a set of instructions before you can run the
code. You will NOT be able to run the code until you get the right OpenCV
libraries for your OS on your computer.

You need to follow these directions before compiling. You gotta tell me the
whole story my friend! If you don't want to recompile the libraries, then
you need to install the 32-bit version of MATLAB on your computer... then
it'll work. Go here:

https://github.com/zk00006/OpenTLD/wiki/Installation

Hope this helps,

  • Ray.

On Tue, Jul 5, 2011 at 12:01 PM, waczkor <
reply@reply.github.com>wrote:

And this? PC
Creating library C:\USERS\WACZKOR\APPDATA\LOCAL\TEMP\MEX_2N1\templib.x
and object C:\USERS\WACZKOR\APPDATA\LOCAL\TEMP\MEX_2N
1\templib.exp
lk.obj : error LNK2019: unresolved external symbol cvReleaseImage
referenced in function "void __cdecl normCrossCorrelation(struct _IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPEAU_IplImage@
@0PEAUCvPoint2D32f@@1HPEADPEAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol cvMatchTemplate
referenced in function "void __cdecl normCrossCorrelation(struct _IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPEAU_IplImage@
@0PEAUCvPoint2D32f@@1HPEADPEAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol cvGetRectSubPix
referenced in function "void __cdecl normCrossCorrelation(struct _IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPEAU_IplImage@
@0PEAUCvPoint2D32f@@1HPEADPEAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol cvCreateImage referenced
in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct
_IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float
*,int,int)" (?normCrossCorrelation@@YAXPEAU_IplImage@@0PEAUCvPoint2D32f@
@1HPEADPEAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol cvCalcOpticalFlowPyrLK
referenced in function mexFunction
lk.obj : error LNK2019: unresolved external symbol cvAlloc referenced in
function mexFunction
lk.mexw64 : fatal error LNK1120: 6 unresolved externals

E:\PROGRA~1\MATLAB\BIN\MEX.PL: Error: Link of 'lk.mexw64' failed.

??? Error using ==> mex at 222
Unable to complete successfully.

Error in ==> compile at 32
eval(['mex lk.cpp -O' include lib]);

Reply to this email directly or view it on GitHub:
#12 (comment)

@waczkor
Copy link

waczkor commented Jul 6, 2011

Running compile.m is finished, but running run_TLD.m gives me this:

??? Invalid MEX-file
'C:\Users\Waczkor\Documents\predator\progi\source
code\zk00006-OpenTLD-8a6934d\mex\lk.mexw64':
C:\Users\Waczkor\Documents\predator\progi\source
code\zk00006-OpenTLD-8a6934d\mex\lk.mexw64 is not a
valid Win32 application.

.

Error in ==> tldInit at 20
lk(0);

Error in ==> tldExample at 34
tld = tldInit(opt,[]); % train initial detector and
initialize the 'tld' structure

Error in ==> run_TLD at 42
[bb,conf] = tldExample(opt);

I did what you said Ray (C:\Users\Waczkor\Documents\predator\progi\source code)
and I got this:
??? Index exceeds matrix dimensions.

Error in ==> tldInitFirstFrame at 21
source.im0 = img_get(source,source.idx(1));

Error in ==> tldExample at 30
source =
tldInitFirstFrame(tld,opt.source,opt.model.min_win);
% get initial bounding box, return 'empty' if
bounding box is too small

Error in ==> run_TLD at 42
[bb,conf] = tldExample(opt);

@rayryeng
Copy link

rayryeng commented Jul 6, 2011

Install 32-bit MATLAB, then try again... I'm out of options.

Good luck,

  • Ray.

@waczkor
Copy link

waczkor commented Jul 6, 2011

with 32-bit matlab it works correctly, thanks :D

@AlonBiran
Copy link

Hey, I am having that same problem, I've tried both open cv 2.2 and 2.3.1, am using vc2010, and matlab 32bit( as is my computer.. )
I am getting this:

PC
Creating library C:\Users\Alon\AppData\Local\Temp\mex_pTZ1Gg\templib.x and object C:\Users\Alon\AppData\Local\Temp\mex_pTZ1Gg\templib.exp
lk.obj : error LNK2019: unresolved external symbol _cvReleaseImage referenced in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvMatchTemplate referenced in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvGetRectSubPix referenced in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvCreateImage referenced in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvCalcOpticalFlowPyrLK referenced in function _mexFunction
lk.obj : error LNK2019: unresolved external symbol _cvAlloc referenced in function _mexFunction
lk.mexw32 : fatal error LNK1120: 6 unresolved externals

C:\PROGRA~1\MATLAB\R2011A\BIN\MEX.PL: Error: Link of 'lk.mexw32' failed.

??? Error using ==> mex at 208
Unable to complete successfully.

Error in ==> compile at 34
eval(['mex lk.cpp -O' include lib]);

any help ?

@waczkor
Copy link

waczkor commented Jul 24, 2011

Matlab us 2010 a or b. 2010a needs a patch. Opencv 2.2 is needed, look after
the path.

On 2011.07.24. 13:01, "AlonBiran" <
reply@reply.github.com>
wrote:

Hey, I am having that same problem, I've tried both open cv 2.2 and 2.3.1,
am using vc2010, and matlab 32bit( as is my computer.. )
I am getting this:

PC
Creating library C:\Users\Alon\AppData\Local\Temp\mex_pTZ1Gg\templib.x and
object C:\Users\Alon\AppData\Local\Temp\mex_pTZ1Gg\templib.exp
lk.obj : error LNK2019: unresolved external symbol _cvReleaseImage
referenced in function "void __cdecl normCrossCorrelation(struct _IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@
@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvMatchTemplate
referenced in function "void __cdecl normCrossCorrelation(struct _IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@
@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvGetRectSubPix
referenced in function "void __cdecl normCrossCorrelation(struct _IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@
@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvCreateImage referenced
in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct
_IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float
*,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@@0PAUCvPoint2D32f@
@1HPADPAMHH@Z)

lk.obj : error LNK2019: unresolved external symbol _cvCalcOpticalFlowPyrLK
referenced in function _m...
lk.mexw32 : fatal error LNK1120: 6 unresolved externals

C:\PROGRA~1\MATLAB\R2011A\BIN\MEX.PL: Error: Link of 'lk.mexw32' failed.

??? Error using ==> mex at 208
Unable to complete successfully.

Error in ==> compile at 34

eval(['mex lk.cpp -O' include lib]);
any help ?

Reply to this email directly or view it on GitHub:
#12 (comment)

@AlonBiran
Copy link

Hey, thanks for the fast reply, I have 2011a
-----הודעה מקורית-----
מאת: waczkor
נשלח: 24/07/2011, 14:24
אל: alonbiran86@gmail.com
נושא: Re: [OpenTLD] Compile in windows (#12)

Matlab us 2010 a or b. 2010a needs a patch. Opencv 2.2 is needed, look after
the path.

On 2011.07.24. 13:01, "AlonBiran" <
reply@reply.github.com>
wrote:

Hey, I am having that same problem, I've tried both open cv 2.2 and 2.3.1,
am using vc2010, and matlab 32bit( as is my computer.. )
I am getting this:

PC
Creating library C:\Users\Alon\AppData\Local\Temp\mex_pTZ1Gg\templib.x and
object C:\Users\Alon\AppData\Local\Temp\mex_pTZ1Gg\templib.exp
lk.obj : error LNK2019: unresolved external symbol _cvReleaseImage
referenced in function "void __cdecl normCrossCorrelation(struct _IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@
@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvMatchTemplate
referenced in function "void __cdecl normCrossCorrelation(struct _IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@
@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvGetRectSubPix
referenced in function "void __cdecl normCrossCorrelation(struct _IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@
@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvCreateImage referenced
in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct
_IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float
*,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@@0PAUCvPoint2D32f@
@1HPADPAMHH@Z)

lk.obj : error LNK2019: unresolved external symbol _cvCalcOpticalFlowPyrLK
referenced in function _m...
lk.mexw32 : fatal error LNK1120: 6 unresolved externals

C:\PROGRA~1\MATLAB\R2011A\BIN\MEX.PL: Error: Link of 'lk.mexw32' failed.

??? Error using ==> mex at 208
Unable to complete successfully.

Error in ==> compile at 34

eval(['mex lk.cpp -O' include lib]);
any help ?

Reply to this email directly or view it on GitHub:
#12 (comment)

Reply to this email directly or view it on GitHub:
#12 (comment)

@waczkor
Copy link

waczkor commented Jul 25, 2011

A needs a patch to work correctly with VS2010, and you'll need to use opencv
2.2

2011/7/24 AlonBiran <
reply@reply.github.com>

Hey, thanks for the fast reply, I have 2011a
-----הודעה מקורית-----
מאת: waczkor
נשלח: 24/07/2011, 14:24
אל: alonbiran86@gmail.com
נושא: Re: [OpenTLD] Compile in windows (#12)

Matlab us 2010 a or b. 2010a needs a patch. Opencv 2.2 is needed, look
after
the path.

On 2011.07.24. 13:01, "AlonBiran" <
reply@reply.github.com>
wrote:

Hey, I am having that same problem, I've tried both open cv 2.2 and 2.3.1,
am using vc2010, and matlab 32bit( as is my computer.. )
I am getting this:

PC
Creating library C:\Users\Alon\AppData\Local\Temp\mex_pTZ1Gg\templib.x and
object C:\Users\Alon\AppData\Local\Temp\mex_pTZ1Gg\templib.exp
lk.obj : error LNK2019: unresolved external symbol _cvReleaseImage
referenced in function "void __cdecl normCrossCorrelation(struct _IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@
@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvMatchTemplate
referenced in function "void __cdecl normCrossCorrelation(struct _IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@
@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvGetRectSubPix
referenced in function "void __cdecl normCrossCorrelation(struct _IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@
@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvCreateImage
referenced
in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct
_IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float
*,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@@0PAUCvPoint2D32f@
@1HPADPAMHH@Z)

lk.obj : error LNK2019: unresolved external symbol _cvCalcOpticalFlowPyrLK
referenced in function _m...
lk.mexw32 : fatal error LNK1120: 6 unresolved externals

C:\PROGRA~1\MATLAB\R2011A\BIN\MEX.PL: Error: Link of 'lk.mexw32' failed.

??? Error using ==> mex at 208
Unable to complete successfully.

Error in ==> compile at 34

eval(['mex lk.cpp -O' include lib]);
any help ?

Reply to this email directly or view it on GitHub:
#12 (comment)

Reply to this email directly or view it on GitHub:
#12 (comment)

Reply to this email directly or view it on GitHub:
#12 (comment)

@AlonBiran
Copy link

Where do I find the patch?
-----הודעה מקורית-----
מאת: waczkor
נשלח: 25/07/2011, 10:37
אל: alonbiran86@gmail.com
נושא: Re: [OpenTLD] Compile in windows (#12)

A needs a patch to work correctly with VS2010, and you'll need to use opencv
2.2

2011/7/24 AlonBiran <
reply@reply.github.com>

Hey, thanks for the fast reply, I have 2011a
-----הודעה מקורית-----
מאת: waczkor
נשלח: 24/07/2011, 14:24
אל: alonbiran86@gmail.com
נושא: Re: [OpenTLD] Compile in windows (#12)

Matlab us 2010 a or b. 2010a needs a patch. Opencv 2.2 is needed, look
after
the path.

On 2011.07.24. 13:01, "AlonBiran" <
reply@reply.github.com>
wrote:

Hey, I am having that same problem, I've tried both open cv 2.2 and 2.3.1,
am using vc2010, and matlab 32bit( as is my computer.. )
I am getting this:

PC
Creating library C:\Users\Alon\AppData\Local\Temp\mex_pTZ1Gg\templib.x and
object C:\Users\Alon\AppData\Local\Temp\mex_pTZ1Gg\templib.exp
lk.obj : error LNK2019: unresolved external symbol _cvReleaseImage
referenced in function "void __cdecl normCrossCorrelation(struct _IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@
@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvMatchTemplate
referenced in function "void __cdecl normCrossCorrelation(struct _IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@
@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvGetRectSubPix
referenced in function "void __cdecl normCrossCorrelation(struct _IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@
@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvCreateImage
referenced
in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct
_IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float
*,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@@0PAUCvPoint2D32f@
@1HPADPAMHH@Z)

lk.obj : error LNK2019: unresolved external symbol _cvCalcOpticalFlowPyrLK
referenced in function _m...
lk.mexw32 : fatal error LNK1120: 6 unresolved externals

C:\PROGRA~1\MATLAB\R2011A\BIN\MEX.PL: Error: Link of 'lk.mexw32' failed.

??? Error using ==> mex at 208
Unable to complete successfully.

Error in ==> compile at 34

eval(['mex lk.cpp -O' include lib]);
any help ?

Reply to this email directly or view it on GitHub:
#12 (comment)

Reply to this email directly or view it on GitHub:
#12 (comment)

Reply to this email directly or view it on GitHub:
#12 (comment)

Reply to this email directly or view it on GitHub:
#12 (comment)

@waczkor
Copy link

waczkor commented Jul 25, 2011

http://www.mathworks.com/support/solutions/en/data/1-D5W493/?solution=1-D5W493

2011/7/25 AlonBiran <
reply@reply.github.com>

Where do I find the patch?
-----הודעה מקורית-----
מאת: waczkor
נשלח: 25/07/2011, 10:37
אל: alonbiran86@gmail.com
נושא: Re: [OpenTLD] Compile in windows (#12)

A needs a patch to work correctly with VS2010, and you'll need to use
opencv
2.2

2011/7/24 AlonBiran <
reply@reply.github.com>

Hey, thanks for the fast reply, I have 2011a
-----הודעה מקורית-----
מאת: waczkor
נשלח: 24/07/2011, 14:24
אל: alonbiran86@gmail.com
נושא: Re: [OpenTLD] Compile in windows (#12)

Matlab us 2010 a or b. 2010a needs a patch. Opencv 2.2 is needed, look
after
the path.

On 2011.07.24. 13:01, "AlonBiran" <
reply@reply.github.com>
wrote:

Hey, I am having that same problem, I've tried both open cv 2.2 and
2.3.1,
am using vc2010, and matlab 32bit( as is my computer.. )
I am getting this:

PC
Creating library C:\Users\Alon\AppData\Local\Temp\mex_pTZ1Gg\templib.x
and
object C:\Users\Alon\AppData\Local\Temp\mex_pTZ1Gg\templib.exp
lk.obj : error LNK2019: unresolved external symbol _cvReleaseImage
referenced in function "void __cdecl normCrossCorrelation(struct
_IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@
@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvMatchTemplate
referenced in function "void __cdecl normCrossCorrelation(struct
_IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@
@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvGetRectSubPix
referenced in function "void __cdecl normCrossCorrelation(struct
_IplImage
*,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char
*,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@
@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvCreateImage
referenced
in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct
_IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float
*,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@@0PAUCvPoint2D32f@
@1HPADPAMHH@Z)

lk.obj : error LNK2019: unresolved external symbol
_cvCalcOpticalFlowPyrLK
referenced in function _m...
lk.mexw32 : fatal error LNK1120: 6 unresolved externals

C:\PROGRA~1\MATLAB\R2011A\BIN\MEX.PL: Error: Link of 'lk.mexw32'
failed.

??? Error using ==> mex at 208
Unable to complete successfully.

Error in ==> compile at 34

eval(['mex lk.cpp -O' include lib]);
any help ?

Reply to this email directly or view it on GitHub:
#12 (comment)

Reply to this email directly or view it on GitHub:
#12 (comment)

Reply to this email directly or view it on GitHub:
#12 (comment)

Reply to this email directly or view it on GitHub:
#12 (comment)

Reply to this email directly or view it on GitHub:
#12 (comment)

@mckelvin
Copy link

@duyhunghd6 z hint works for me.

@touchdream
Copy link

hi guys, i have the same problem, who can help me please? i use matlab2011a+opencv2.3.1+vs2008

the error:
PC
Creating library C:\Users\dell\AppData\Local\Temp\mex_MnrMoy\templib.x and object C:\Users\dell\AppData\Local\Temp\mex_MnrMoy\templib.exp
lk.obj : error LNK2019: unresolved external symbol _cvReleaseImage referenced in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvMatchTemplate referenced in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvGetRectSubPix referenced in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvCreateImage referenced in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvCalcOpticalFlowPyrLK referenced in function _mexFunction
lk.obj : error LNK2019: unresolved external symbol _cvAlloc referenced in function _mexFunction
lk.mexw32 : fatal error LNK1120: 6 unresolved externals

C:\PROGRA~1\MATLAB\BIN\MEX.PL: Error: Link of 'lk.mexw32' failed.

??? Error using ==> mex at 208
Unable to complete successfully.

Error in ==> compile at 35
eval(['mex lk.cpp -O' include lib]);

does anyone have a solution? thank in advance..

@xinlei0616
Copy link

Hi,I got the similar problem,I use matlab2011a+vs2010+opencv2.2.
the error:
PC
Creating library C:\Users\ADMINI1\AppData\Local\Temp\mex_vEPCO8\templib.x and object C:\Users\ADMINI1\AppData\Local\Temp\mex_vEPCO8\templib.exp
lk.obj : error LNK2019: unresolved external symbol _cvMatchTemplate referenced in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvGetRectSubPix referenced in function "void __cdecl normCrossCorrelation(struct _IplImage *,struct _IplImage *,struct CvPoint2D32f *,struct CvPoint2D32f *,int,char *,float *,int,int)" (?normCrossCorrelation@@YAXPAU_IplImage@@0PAUCvPoint2D32f@@1HPADPAMHH@Z)
lk.obj : error LNK2019: unresolved external symbol _cvCalcOpticalFlowPyrLK referenced in function _mexFunction
lk.mexw32 : fatal error LNK1120: 3 unresolved externals

D:\MATLAB\R2011A\BIN\MEX.PL: Error: Link of 'lk.mexw32' failed.

??? Error using ==> mex at 208
Unable to complete successfully.

Error in ==> compile at 32
eval(['mex lk.cpp -O' include lib]);

any help ? thanks so much!

@xinlei0616
Copy link

I figure it out now.the error is that I had set lthe libpath as ' D:\OpenCV2.2\lib',and there's an unnecessary spase before the path(in front of D).

@hajarSokeh
Copy link

I'm using Linux 64bit, matlab 2012b,
and I'm getting this problem:
Unix

Warning: You are using gcc version "4.6.3-1ubuntu5)". The version
currently supported with MEX is "4.4.6".
For a list of currently supported compilers see:
http://www.mathworks.com/support/compilers/current_release/

lk.o: In function normCrossCorrelation(_IplImage*, _IplImage*, CvPoint2D32f*, CvPoint2D32f*, int, char*, float*, int, int)': lk.cpp:(.text+0x183): undefined reference tocvCreateImage'
lk.cpp:(.text+0x19c): undefined reference to cvCreateImage' lk.cpp:(.text+0x1b9): undefined reference tocvCreateImage'
lk.cpp:(.text+0x1f5): undefined reference to cvGetRectSubPix' lk.cpp:(.text+0x20c): undefined reference tocvGetRectSubPix'
lk.cpp:(.text+0x220): undefined reference to cvMatchTemplate' lk.cpp:(.text+0x24f): undefined reference tocvReleaseImage'
lk.cpp:(.text+0x258): undefined reference to cvReleaseImage' lk.cpp:(.text+0x261): undefined reference tocvReleaseImage'
lk.o: In function mexFunction': lk.cpp:(.text+0x2f4): undefined reference tocvReleaseImage'
lk.cpp:(.text+0x30e): undefined reference to cvReleaseImage' lk.o:lk.cpp:(.text+0x32c): more undefined references tocvReleaseImage' follow
lk.o: In function mexFunction': lk.cpp:(.text+0x43d): undefined reference tocvCreateImage'
lk.cpp:(.text+0x459): undefined reference to cvCreateImage' lk.cpp:(.text+0x4c6): undefined reference tocvCreateImage'
lk.cpp:(.text+0x4e3): undefined reference to cvCreateImage' lk.cpp:(.text+0x564): undefined reference tocvAlloc'
lk.cpp:(.text+0x576): undefined reference to cvAlloc' lk.cpp:(.text+0x589): undefined reference tocvAlloc'
lk.cpp:(.text+0x63e): undefined reference to cvAlloc' lk.cpp:(.text+0x649): undefined reference tocvAlloc'
lk.o:lk.cpp:(.text+0x651): more undefined references to cvAlloc' follow lk.o: In functionmexFunction':
lk.cpp:(.text+0x6fe): undefined reference to cvCalcOpticalFlowPyrLK' lk.cpp:(.text+0x795): undefined reference tocvCalcOpticalFlowPyrLK'
collect2: ld returned 1 exit status

mex: link of ' "lk.mexa64"' failed.

Error using mex (line 206)
Unable to complete successfully.

Error in compile (line 77)
eval(['mex lk.cpp -O' include lib]);
What should I do? :(

@xinlei0616
Copy link

Maybe it's because that the libpath you set is wrong,check your path again.

@simonsayshi
Copy link

@rayryeng @waczkor I can successfully run the run_tld.m but when I change path to my own folder I got the index exceeds the matrix dimension too. same errors with yours @waczkor any idea for this? :)

@rayryeng
Copy link

@simonsayshi I'm sorry I have no idea. I haven't used this framework in 4 years so whatever nuances I've discovered, I've long forgotten them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests