Differences between revisions 5 and 13 (spanning 8 versions)
Revision 5 as of 2009-12-11 15:23:06
Size: 2222
Comment:
Revision 13 as of 2011-02-14 16:33:01
Size: 2230
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
This page briefly documents how to configure MATLAB for Windows when a MEX compilation environment is required. Under Linux and MacOS, this configuration step is not necessary, because these operating systems already come with a working compilation environment (using g++). This page briefly documents how to configure MATLAB for Windows when a MEX compilation environment is required. Under Linux and MacOS, this configuration step is not necessary, because these operating systems already come with a working compilation environment (using gcc).
Line 3: Line 3:
Two compilers are currently supported: GNU C++ compiler (g++), and Microsoft Visual C++ (MSVC). Two compilers are currently supported: GNU C compiler (gcc) from Cygwin, and Microsoft Visual C++ (MSVC).
Line 5: Line 5:
With Dynare, you need a working MEX compilation environment in two cases:
 * you need to recompile Dynare MEX
files, without using Dynare build system
 *
you want to use the {{{USE_DLL}}} option of {{{model}}}, or the {{{k_order_solver}}} option of {{{stoch_simul}}}. In that case, you need to tell Dynare which compiler you are using:
   * if you are using Cygwin, type at the MATLAB prompt:
   {{{
With Dynare, you need a working MEX compilation environment if you want to use the {{{USE_DLL}}} option of {{{model}}}. In that case, you need to tell Dynare which compiler you are using:
 * if you are using Cygwin, type at the MATLAB prompt:
{{{
Line 11: Line 9:
   }}}
   * if you are using Microsoft Visual C++:
   {{{
}}}
 * if you are using Microsoft Visual C++:
{{{
Line 15: Line 13:
   }}} }}}
Line 17: Line 15:
/!\ For MATLAB 64-bit, the only supported compiler is MSVC = Configuring MATLAB with GNU C compiler (gcc) from Cygwin =
Line 19: Line 17:
= Configuring MATLAB with GNU C++ compiler (g++) =

 * Install a Cygwin environment (see http://www.cygwin.com). You need at least the following packages: gcc, gcc-g++, gcc-mingw, gcc-mingw-g++
 * Copy the file {{{mexopts.bat}}} in {{{c:\Documents and Settings\<User name>\Application Data\MathWorks\MATLAB\<release number>\}}}. This file comes with your Dynare installation (in {{{c:\dynare\<Dynare version>}}}). If you don't have it in your distribution, you can pick it [[https://www.dynare.org/svn/dynare/trunk/windows/mexopts.bat|here in the SVN]].
 * Install a Cygwin environment (see http://www.cygwin.com). If your MATLAB is 32-bit, you need the "mingw64-i686-gcc" package. If your MATLAB is 64-bit, you need the "mingw64-x86_64-gcc" package.
 * The configuration file is called [[https://www.dynare.org/trac/browser/windows/mexopts-win32.bat|mexopts-win32.bat]] for MATLAB 32-bit, and [[https://www.dynare.org/trac/browser/windows/mexopts-win64.bat|mexopts-win64.bat]] for MATLAB 64-bit (these files are also distributed in recent packages of Dynare)
 * Rename the configuration file to {{{mexopts.bat}}}, and copy it to {{{c:\Documents and Settings\<User name>\Application Data\MathWorks\MATLAB\<release number>\}}}.
Line 29: Line 26:
 * Install Visual C++ 2008 Express Edition, downloadable at http://www.microsoft.com/Express/VC/  * Install Visual C++ 2008 Express Edition, downloadable at http://www.microsoft.com/express/Downloads/#Visual_Studio_2008_Express_Downloads

This page briefly documents how to configure MATLAB for Windows when a MEX compilation environment is required. Under Linux and MacOS, this configuration step is not necessary, because these operating systems already come with a working compilation environment (using gcc).

Two compilers are currently supported: GNU C compiler (gcc) from Cygwin, and Microsoft Visual C++ (MSVC).

With Dynare, you need a working MEX compilation environment if you want to use the USE_DLL option of model. In that case, you need to tell Dynare which compiler you are using:

  • if you are using Cygwin, type at the MATLAB prompt:

dynare modfilename cygwin
  • if you are using Microsoft Visual C++:

dynare modfilename msvc

Configuring MATLAB with GNU C compiler (gcc) from Cygwin

  • Install a Cygwin environment (see http://www.cygwin.com). If your MATLAB is 32-bit, you need the "mingw64-i686-gcc" package. If your MATLAB is 64-bit, you need the "mingw64-x86_64-gcc" package.

  • The configuration file is called mexopts-win32.bat for MATLAB 32-bit, and mexopts-win64.bat for MATLAB 64-bit (these files are also distributed in recent packages of Dynare)

  • Rename the configuration file to mexopts.bat, and copy it to c:\Documents and Settings\<User name>\Application Data\MathWorks\MATLAB\<release number>\.

  • Note that if you installed Cygwin in a non-standard directory (i.e. elsewhere than C:\CYGWIN), you need to edit the mexopts.bat and change the set PATH=... line accordingly.

Configuring MATLAB with Microsoft Visual C++ (MSVC)

The following should work with recent versions of MATLAB:

DynareWiki: ConfigureMatlabWindowsForMexCompilation (last edited 2016-10-15 12:21:08 by JohannesPfeifer)