I am trying to solve a relatively big model and am using the model(use_dll) option to compile the model equations and derivatives, instead of writing those as .m files. However, I am receiving an error in the process of building the .mex files; in particular:
Starting Dynare (version 4.4.3). Starting preprocessing of the model file ... Found 10 equation(s). Evaluating expressions...done Computing static model derivatives: - order 1 Computing dynamic model derivatives: - order 1 - order 2 - order 3 Processing outputs ...done Preprocessing completed. Starting MATLAB/Octave computing. Building with 'Microsoft Windows SDK 7.1 (C)'. MEX completed successfully. Building with 'Microsoft Windows SDK 7.1 (C)'. Error using mex Microsoft (R) Manifest Tool version 6.1.7716.0 Copyright (c) Microsoft Corporation 2009. All rights reserved. mt : general error c101008d: Failed to write the updated manifest to the resource of file "growthModel_static.mexw64". The operation failed. Error in growthModel (line 85) eval('mex -O LINKFLAGS="$LINKFLAGS /export:Static" growthModel_static.c growthModel_static_mex.c') Error in dynare (line 180) evalin('base',fname) ;
Here, growthModel.mod is the standard neoclassical growth model and is attached to this post. (I know that use_dll is not necessary for this model, but it is a small working example that creates my issue). I get this problem using both cygwin and msvc compilers. To further complicate the problem, I don’t receive this error every time I run dynare, but I can’t seem to predict when it will happen! For example, I had thought that possibly the error only comes up after a previous run due to the new mex files interacting with the old ones, but that’s not the case. And sometimes dynare will be able to compile the files, but the next time I run the file it will not.
Does anyone have any advice for me? I am a total novice when it comes to compiling code. I briefly googled the problem and found suggestions to disable the anti-virus, but that did not work for me.
growthModel.mod (2.48 KB)