Why does MATLAB Runtime cache (CTF extraction path) get corrupted after running the executable for several number of times?

18 ビュー (過去 30 日間)
We have a .NET application where functions of a MATLAB Compiler SDK generated DLL are called.
It happens that the MATLAB Runtime cache gets corrupt, such that executing the DLL function always results in error.
This happens only after running the application for several number of times.  When I manually delete the entire MATLAB Runtime cache directory helps resolving the issue. I am wondering what could be the reason for corrupted CTF extraction.

採用された回答

MathWorks Support Team
MathWorks Support Team 2024 年 8 月 1 日
編集済み: MathWorks Support Team 2024 年 8 月 1 日
The problem may occur to standalone applications created with MATLAB Compiler and libraries created with MATLAB Compiler SDK. The possible cause is that the MATLAB Runtime cache is by default somewhere below your TEMP directory. Certain system/network tools/services might try to "clean" TEMP directory. Possible solutions for this issue would be:
1. Use MCR_CACHE_ROOT environment variable to redirect the cache to a location not below TEMP
2. Do not embed the CTF. You can choose not to embed CTF by using 
flag or set EmbedArchive flag to off when using compiler.build CLI. The not-embedded CTF will then not be extracted to the MATLAB Runtime cache but rather to a directory below the directory containing the CTF.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeIntroduction to Installation and Licensing についてさらに検索

タグ

製品


リリース

R2010a

Community Treasure Hunt

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

Start Hunting!

Translated by