Mex file issue

1 次查看(过去 30 天)
Stephen Yip
Stephen Yip 2012-2-1
评论: na yan 2015-5-8
Hi,
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 http://www.mathworks.com/support/compilers/R2011b/win64.html
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: http://www.mathworks.com/support/solutions/en/data/1-5C27B9/?solution=1-5C27B9 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.

采纳的回答

Ken Atwell
Ken Atwell 2012-2-2
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 个)

Stephen Yip
Stephen Yip 2012-2-2
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
  3 个评论
Mike Powell
Mike Powell 2012-9-5
Stephen,
This worked for me. Thank you SO MUCH!!!!!! I can't believe it! This is such a huge relief!
Amanda
Mehwish
Mehwish 2013-1-22
It worked for me too! Thank you!
Mehwish

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 MATLAB Compiler SDK 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by