MCR libraries

From Dynamo
Jump to: navigation, search

The MCR (Matlab Compiled Runtime) libraries are a set libraries freely distributed by Mathworks.

They allow running code written in Matlab without having a Matlab license in your system.

In Dynamo

The MCR libraries are used when running the standalone version, both for running projects or for the interactive console. The libraries are already included in the version available for download and in general you shouldn't need to reinstall them.

Also, when you activate Dynamo on a linux shell, the library paths will be set to point to the MCR libraries shipped within your Dynamo installation.

General use of the MCR

In general applications of the MCR libraries, the code needs to have been compiled by the authors, who should have delivered a precompiled executable to the end users. End users need to have a version of the MCR libraries that matches the version used by the author to compile the original Matlab code.

In runtime, the shell must be informed through LD_LIBRARY_PATH of the location of the libraries.

Do not mix this environment variable with MCR_CACHE_ROOT, which is used to select a location on the filesystem where the MCR libraries will store temporary information.

MCR versions

The version of the MCR library reflects the strengths and flaws of the Matlab version. Thus, if a Dynamo standalone has been compiled against, say, Matlab release R2015a, the performance of the resulting distributed Dynamopackage (for instance, in graphics rendering) will correspond to the performance of that Matlab version.

In principle, we would like to distribute Dynamo packages that are compiled against the highest available version of Matlab, to ensure that users of the Dynamo standalone have access to the best performing version of software.

However, Mathworks has recently introduced some changes in their MCR packaging system. For MCRs R2015b onwards, we have received user reports of Dynamo standalone versions not correctly linking with the MCR libraries distributed in the very same package. In those cases, the users have two options:

  • install manually the corresponding MCR version in their own system
  • use a Dynamo package compiled against R2015a.