OpenTLD icon indicating copy to clipboard operation
OpenTLD copied to clipboard

Mac OS X compilation error

Open ShuoYangRobotics opened this issue 11 years ago • 4 comments

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]);

ShuoYangRobotics avatar Apr 18 '13 12:04 ShuoYangRobotics

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.

groakat avatar May 25 '15 16:05 groakat

I tried @groakat methods, it didn't work for me. Anyone has other methods?

zli54 avatar Jul 01 '15 18:07 zli54

Do you get any error?

groakat avatar Jul 01 '15 18:07 groakat

@groakat , I set the lib path wrongly :P, now it works. Thank you~

zli54 avatar Jul 02 '15 13:07 zli54