How to help Stateflow locate the C-compiler?

2 次查看(过去 30 天)
When I try to run any model in which Stateflow components are used, I get the following error:
"Unable to locate a C-compiler required by Stateflow and MATLAB Function blocks. Use 'mex -setup' to select a supported C-compiler."
Even after running 'mex -setup' as suggested in the error message and choosing the compiler, the error persists!
Any idea how to help Stateflow locate the C-compiler?

回答(2 个)

Guru
Guru 2013-7-6
If you are having problems after running mex -setup, then the path to the C compiler is incorrect, thus it cannot find the C compiler in question. Check your environment variables for the C compiler and make sure that the C compiler is in the folder where Mex -setup is stating.
  1 个评论
First
First 2013-7-7
I didn't get what u mean by "Check your environment variables for the C compiler", how to do that?
I checked the folder stated by mex-setup, the C compiler is there.
If that's of any help, when I run mex -setup I am getting the following:
>> 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/R2013a/win64.html
Please choose your compiler for building MEX-files:
Would you like mex to locate installed compilers [y]/n?
Select a compiler:
[1] Microsoft Visual C++ 2012 in C:\Program Files (x86)\Microsoft Visual Studio 11.0
[0] None
Compiler: 1
Please verify your choices:
Compiler: Microsoft Visual C++ 2012
Location: C:\Program Files (x86)\Microsoft Visual Studio 11.0
Are these correct [y]/n? y
*************************************************************************
Warning: MEX-files generated using Microsoft Visual C++ 2012 require that Microsoft Visual Studio 2012 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\ALI\AppData\Roaming\MathWorks\MATLAB\R2013a\mexopts.bat From template: C:\PROGRA~1\MATLAB\R2013a\bin\win64\mexopts\msvc110opts.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/help/matlab/matlab_external/upgrading-mex-files-to-use-64-bit-api.html Building with the -largeArrayDims option enables the new API. ************************************************************************

请先登录,再进行评论。


Kaustubha Govind
Kaustubha Govind 2013-7-17
Since you are using Microsoft Visual C++ 2012 in R2013a, you might be affected by Bug #931218. Please see if installing the patch fixes the issue.
  1 个评论
Ahmed AlTaie
Ahmed AlTaie 2015-1-28
I followed the link but still not working can you help me to do it step by step..... thanks

请先登录,再进行评论。

类别

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

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by