How do I use the MATLAB Compiler to create a compiled component and run it with an older version of the MATLAB Compiler Runtime (MCR)?
10 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
MathWorks Support Team
el 27 de Jun. de 2009
Respondida: Image Analyst
el 27 de Abr. de 2022
I would like to be able to execute my compiled code with previous versions of MCR. I would also like to know if an application compiled with an older version of the MATLAB Compiler will run with a newer MCR.
Respuesta aceptada
MathWorks Support Team
el 27 de Abr. de 2022
Editada: MathWorks Support Team
el 27 de Abr. de 2022
The runtime libraries that initialize during runtime of MATLAB Compiled components are versioned so that there can be side by side installations of different versions of the MCR on one machine. Therefore, components compiled with one version of the MATLAB Compiler are only compatible with the MCR derived from the same version of MATLAB.
This also applies to all products that are dependent on the MATLAB Compiler, such as MATLAB Builder NE, MATLAB Builder JA, MATLAB Builder EX, etc.
0 comentarios
Más respuestas (1)
Image Analyst
el 27 de Abr. de 2022
If you're using a newer version of MATLAB, you may be using a MATLAB function that did not exist yet in the older run-time library you'd like to use. Therefore you need to use the matching run-time library to make sure all your functions will be able to run. Likewise, some functions are removed.
For example let's say your code uses groupsummary() which was introduced in r2018a. If you compiled and deployed your program, and tried to use an MCR run-time library from r2017b, it would not be able to find groupsummary() so your program would not be able to run properly. For that reason you need to install a matching MCR.
0 comentarios
Ver también
Categorías
Más información sobre Get Started with MATLAB Compiler SDK en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!