Trying to compile the ecos
mex files I ran into the following errors:
In file included from /opt/local/lib/gcc47/gcc/x86_64-apple-darwin13/4.7.3/include-fixed/syslimits.h:7:0,
from /opt/local/lib/gcc47/gcc/x86_64-apple-darwin13/4.7.3/include-fixed/limits.h:34,
from ../external/SuiteSparse_config/SuiteSparse_config.h:45,
from ../external/ldl/include/ldl.h:11,
from ../external/ldl/src/ldl.c:157:
/opt/local/lib/gcc47/gcc/x86_64-apple-darwin13/4.7.3/include-fixed/limits.h:169:61: error: no include path in which to search for limits.h
In file included from ../external/ldl/include/ldl.h:11:0,
from ../external/ldl/src/ldl.c:157:
../external/SuiteSparse_config/SuiteSparse_config.h:46:20: fatal error: stdlib.h: No such file or directory
compilation terminated.
mex: compile of ' "../external/ldl/src/ldl.c"' failed.
Turns out this has nothing to do with ecos
, rather I had upgraded my OS since installing matlab. I need to replace 10.7
with 10.9
in my /Applications/MATLAB_R2013b.app/bin/mexopts.sh
file. Then everything compiled fine.
The offending flags were:
-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/ -mmacosx-version-min=10.7
And the correct versions were:
-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/ -mmacosx-version-min=10.9