MATLAB Runtime Component Cache 和可部署存档嵌入
可部署存档数据会自动直接嵌入到编译的组件中,并提取到临时文件夹中。
自动嵌入功能支持通过环境变量使用 MATLAB® Runtime Component Cache 功能。
这些变量允许您指定以下内容:
定义您希望自动提取可部署存档的默认位置
添加诊断错误打印选项,这些选项可在自动提取可部署存档时使用,以便进行故障排除
出于性能原因调整 MATLAB Runtime 组件缓存大小。
使用以下环境变量更改这些设置。
| 环境变量 | 目的 | 注意 |
|---|---|---|
| MCR_CACHE_ROOT | 当设置为您希望提取可部署存档的位置时,此变量会覆盖默认的每用户组件缓存位置。这仅适用于嵌入的 .ctf 文件。 | 在 macOS 上,MATLAB R2020a 及更高版本中会忽略此变量。App 捆绑包包含运行时所需的文件。 |
| MCR_CACHE_SIZE | 设置后,此变量会覆盖默认组件缓存大小。 | 此变量的初始限制为 32M(兆字节),从 R2024b 开始为 1024M。不过,首次设置此变量后,可以更改此限制。请编辑文件 .max_size(该文件位于运行 mcrcachedir 命令指定的文件中),并使用所需的缓存大小限制。 |
您可以通过使用 覆盖默认行为 选项进行编译来覆盖此自动嵌入和提取行为。
小心
如果运行 mcc 时指定了冲突的包装器和目标类型,则可部署存档将不会嵌入到生成的组件中。例如,如果您运行:
mcc -W lib:myLib -T link:exe test.m test.c
test.exe 不会嵌入可部署存档,就像您在命令行中指定了 -C 选项一样。
覆盖默认行为
要以 R2008b 之前版本的方式提取可部署存档以及编译的 .NET 程序集,请使用 mcc 的 -C 选项进行编译。
例如,您可能希望使用此选项来解决可部署存档的问题,因为这样日志和诊断消息更加清晰可见。
详细信息
有关可部署存档的详细信息,请参阅关于可部署存档。