I am trying to find the instructions for specifying the dependent library files as well as the path for compiling a c++ MEX file. Unfortunately, I wasn't successful and I couldn't get it to work. I don't know how to use:
COMPFLAGS -I -l
Could someone please instruct me how to use these switches in Windows for the following case?
/LIBPATH:"C:\Program Files (x86)\lib\" / l64.lib cr.lib al.lib
No products are associated with this question.
You should just need to add them on to the "mex" command. Probably something like:
>> mex myfile.c -L"C:\Program Files (x86)\lib\" -l l64.lib -l cr.lib -l al.lib
I had a similar problem with a space in the CFLAGS for Linux: Too add 'CFLAGS="\$CFLAGS -std=c99"' Matlab needs:
mex('CFLAGS="\$CFLAGS', '-std=c99"', ...)
The MEX command is too smart for parsing the non-functional form, so try this:
mex('myfile.c', '-L"C:\Program', 'Files', '(x86)\lib\"', '-l l64.lib', ... '-l cr.lib', '-l al.lib')
This looks as strange as it is. Perhaps the spaces after "-l" are a problem also. I think they should be omitted.
I'm convinced, that MEX has been grown beyond a fair level of usability: Under Windows mex -setup creates a .bat file, which is not called as batch file, but parsed and evaluated in a perl script. Actually starting a compiler is trivial and a handmade M-function would be cleaner and more stable.