MATLAB Answers

R2017b Visual Studio 2017 can't link model files when compiling simulink

4 views (last 30 days)
Michael Krastev
Michael Krastev on 13 Nov 2017
Answered: Nick Choi on 16 Nov 2017
I have Visual Studio 2017 and R2017b, mex and slrtgetCC both recognise the tool set, mex happily complies simple .c files.
When I build the model however it crashes out
NMAKE : fatal error U1052: file 'model.mk' not found
Followed by
Validation error(s):
### Validating other build tools ...
Unable to locate build tool "Microsoft Visual C Compiler": cl
Unable to locate build tool "Microsoft Visual C Linker": link
Unable to locate build tool "Microsoft Visual C++ Compiler": cl
Unable to locate build tool "Microsoft Visual C++ Linker": link
This is especially weird since through a development command window I can call
nmake -f model.mk all
which happily compiles to a .exe
Which is what is in the .bat file that causes the original nmake error.
  1 Comment
Michael Krastev
Michael Krastev on 14 Nov 2017
Ok I found the problem.
Calling VCVARSALL.BAT (which the auto generated bat file does before calling nmake to launch development prompt) changes the current working directory as of VS2017.
To Fix the bat script needs
https://developercommunity.visualstudio.com/content/problem/26780/vsdevcmdbat-changes-the-current-working-directory.html
to predefine the working directory. This should be in the model.bat file that gets generated when building but it isn't.

Sign in to comment.

Accepted Answer

Nick Choi
Nick Choi on 16 Nov 2017
This issue seems like it may be related to the following external bug report:
If this is the case, the report provides a workaround for the issue and the bug was fixed as of MATLAB R2017b Update 1.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!