OpenTLD
OpenTLD copied to clipboard
Mac OS X compilation error
Mac Unix Undefined symbols for architecture x86_64: "cvAlloc", referenced from: mexFunction in lk.o "cvCalcOpticalFlowPyrLK", referenced from: mexFunction in lk.o "cvCreateImage", referenced from: normCrossCorrelation(IplImage, IplImage, CvPoint2D32f, CvPoint2D32f, int, char, float, int, int)in lk.o mexFunction in lk.o "cvGetRectSubPix", referenced from: normCrossCorrelation(IplImage, IplImage, CvPoint2D32f, CvPoint2D32f, int, char, float_, int, int)in lk.o "cvMatchTemplate", referenced from: normCrossCorrelation(IplImage, IplImage, CvPoint2D32f, CvPoint2D32f_, int, char_, float_, int, int)in lk.o "cvReleaseImage", referenced from: normCrossCorrelation(IplImage, IplImage, CvPoint2D32f, CvPoint2D32f_, int, char_, float_, int, int)in lk.o _mexFunction in lk.o ld: symbol(s) not found for architecture x86_64 collect2: ld returned 1 exit status
mex: link of ' "lk.mexmaci64"' failed.
Error using mex (line 206) Unable to complete successfully.
Error in compile (line 77) eval(['mex lk.cpp -O' include lib]);
I run into the same problem. It is a strange Matlab behaviour, in my case it is trying to compile both, the mac and the unix version because isunix
is true for OSX as well. If you change line 64 from
if isunix
to
if isunix && ~ismac
it might work.
I tried @groakat methods, it didn't work for me. Anyone has other methods?
Do you get any error?
@groakat , I set the lib path wrongly :P, now it works. Thank you~