1
votes

I have Matlab R2011b and want to call some C++ code from it. I guess I need some mex-commands for that, and install a c++ compiler that Matlab will work with. I have Windows 7, 64bit, MS Visual Studio Community 2013 (Version 12.0) and am not sure which MS SDK; it says under "C:\Program Files (x86)\Microsoft SDKs\Windows" I see several folders, v7.0A, v7.1A, v8.0, v8.0A, v8.1 and v8.1A. The list of compilers supported by Matlab tells me that Matlab R2011b supports the c++ compilers "Microsoft Visual C++ 2010 Express with Microsoft Windows SDK 7.1" and "Microsoft Windows SDK 7.1".

When I type "mex -setup" in Matlab and have it locate installed compilers, it says "No supported SDK or compiler was found on this computer. "

Does it mean that:

  • Matlab R2011b only supports MS Visual Studio 2010 Express, but not MS Visual Studio Community 2013 (which I could have figured, if it were downward compatible)
  • it does not find the compiler; then where is it - I know the .exe to my Visual Studio, but is this also the compiler?
  • I need the the SDK 7.1 - then do I have to uninstall the others? When I search in my list of Software (through the control panel) for "SDK", I see only "Microsoft .NET Framework 4.5 SDK", "Microsoft .NET Framework 4.5.1 SDK" and "Microsoft Silverlight 5 SDK"
  • anything else? Thanks.
1
Not an answer, but maybe try stackoverflow.com/q/8552580/2778484chappjc

1 Answers

0
votes

I am currently experiencing the same issue, maybe this could help. The error is (on Matlab2014a terminal):

> mex -setup c
Error using mex
No supported compiler or SDK was found. For options, visit
http://www.mathworks.com/support/compilers/R2014a/win64.

When you actually follow that link, it shows that only Professional versions of Visual Studio can be linked to Matlab, such as "Microsoft Visual C++ 2013 Professional". Since you and I have "Community" versions of Visual Studio I think that's where the problem is.

I am now trying to get a standalone version of SDK but it seems like it does not want to install and I don't know why...

Hope you have solved your problem since your post.