Why doesn't MCR add path with libmat.dll to PATH environment variable?

5 vues (au cours des 30 derniers jours)
Meng-Yuan Huang
Meng-Yuan Huang le 20 Août 2013
Réponse apportée : Enkh le 10 Mar 2016
The MATLAB Compiler Runtime installer can be download here: http://www.mathworks.com/products/compiler/mcr/
The installer will add the following path to PATH environment variable where there is the DLL file mclmcrrt:
C:\Program Files (x86)\MATLAB\MATLAB Compiler Runtime\v81\runtime\win32
My question is why the installer don't add this path to PATH environment variable?:
C:\Program Files (x86)\MATLAB\MATLAB Compiler Runtime\v81\bin\win32
Under this path, there are libmat.dll and libmx.dll. These files are important DLL files, because C/C++ programs can dynamically link to them to access MAT files. It could be a good idea that MAT C/C++ programs can be easily deployed to some computers by simply installing the MCR if the MCR installer add the path with libmat.dll and libmx.dll to PATH environment variable. Isn't it?

Réponse acceptée

Chetan Rawal
Chetan Rawal le 3 Sep 2013
It is because the Runtime Libraries (MCR) not only works for C/C++ projects, but also for standalone executable files generated using the MATLAB Compiler. The the standalones case, it should not need extra PATH variables. For anything extra (C/C++, Java, .NET ), you can add the required components for your project.

Plus de réponses (1)

Enkh
Enkh le 10 Mar 2016
On top of Chetan's answer, the
mcrroot\bin\win64 or mcrroot\bin\win32
directories generally shouldn't be added to the system PATH variable, because that folder contains many DLLs that might get incorrectly loaded by unrelated programs, usually causing their failure, if it is on the system PATH.
If you need DLLs from that folder, it is better to find where mcrroot\runtime\win64 is from the system PATH, then find bin\win64 in relation to that and load the needed DLLs directly.

Catégories

En savoir plus sur C Shared Library Integration dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by