MATLAB Answers

Stephen Yip

Mex file issue

Asked by Stephen Yip
on 1 Feb 2012
Latest activity Commented on by na yan
on 8 May 2015


I already installed Visual C++ 2010 Express and Microsoft Windows SDK 7.1. I still get the following error message. Does anyone know how to fix the problem? Thanks!

>> mex -setup

Welcome to mex -setup. This utility will help you set up a default compiler. For a list of supported compilers, see

Please choose your compiler for building MEX-files:

Would you like mex to locate installed compilers [y]/n? y

Select a compiler: [1] Microsoft Software Development Kit (SDK) 7.1 in C:\Program Files (x86)\Microsoft Visual Studio 10.0\ [2] Microsoft Visual C++ 2010 Express in C:\Program Files (x86)\Microsoft Visual Studio 10.0\

[0] None

Compiler: 2

Please verify your choices:

Compiler: Microsoft Visual C++ 2010 Express Location: C:\Program Files (x86)\Microsoft Visual Studio 10.0\

Are these correct [y]/n? y

************************************************************************* Warning: MEX-files generated using Microsoft Visual C++ 2010 require that Microsoft Visual Studio 2010 run-time libraries be available on the computer they are run on. If you plan to redistribute your MEX-files to other MATLAB users, be sure that they have the run-time libraries. *************************************************************************

Trying to update options file: C:\Users\igrt\AppData\Roaming\MathWorks\MATLAB\R2011b\mexopts.bat From template: C:\PROGRA~1\MATLAB\R2011b\bin\win64\mexopts\msvc100freeopts.bat

Done . . .

************************************************************************ Warning: The MATLAB C and Fortran API has changed to support MATLAB variables with more than 2^32-1 elements. In the near future you will be required to update your code to utilize the new API. You can find more information about this at: Building with the -largeArrayDims option enables the new API. ************************************************************************

>> mex *.c Error: Could not find the compiler "cl" on the DOS path. Use mex -setup to configure your environment properly.

C:\PROGRA~1\MATLAB\R2011B\BIN\MEX.PL: Error: Unable to locate compiler. 

Error using mex (line 206) Unable to complete successfully.



No products are associated with this question.

2 Answers

Answer by Ken Atwell
on 2 Feb 2012
 Accepted answer

It sounds like you have the right stuff installed. Can you try running a 64-bit Visual Studio Command Prompt (from the Windows Start menu). Then run cl in that command window and see if the compiler is available at all? If not, something went afoul in your Visual Studio or SDK installation.

Grasping at straws, another thing to try would to be choose option 1 in mex -setup. The SDK alone is enough for 64-bit compilation.

For reference, this Solution covers installing the Visual C++ 2010 Express compiler and 7.1 SDK.

  1 Comment

na yan
on 8 May 2015

Hi,Ken, Thank you!

Answer by Stephen Yip
on 2 Feb 2012

Hi Ken,

I had to copy "mspdb100.dll" from the "..\Microsoft Visual Studio 10.0\Common7\IDE\" to the "..\Microsoft Visual Studio 10.0\VC\bin\".

It is now working smooth and nicely.

Thank you! Stephen


on 27 Jul 2012


I have same issue going on and I'm pretty much out of hope. Are there other dll I should check/copy to make mex find the compiler ? Can I check the path after -setup ?




This worked for me. Thank you SO MUCH!!!!!! I can't believe it! This is such a huge relief!


on 22 Jan 2013

It worked for me too! Thank you!


Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!