设置 MATLAB 库路径以测试已部署的应用程序
注意
如果您正在为最终用户部署而非开发测试准备应用程序,请参阅 为部署设置 MATLAB Runtime 库路径。
在使用 MATLAB® Compiler™ 或 MATLAB Compiler SDK™ 开发应用程序时,请使用现有的 MATLAB 安装包进行测试,而非单独安装 MATLAB Runtime。这种方法既能缩短开发时间,又能确保开发环境与测试环境的一致性。
开发周期通常包括多次编译、测试、调试和重新编译应用程序。请将系统配置为使用 MATLAB 安装目录中的库,以便在无需为每次测试迭代安装和配置 MATLAB Runtime 的情况下,测试您编译的应用程序。
在开发计算机上,您可以通过在 MATLAB 提示符下发出 ! 来测试应用程序的执行。这将验证库依赖关系是否正确、可部署存档是否可以提取以及应用程序所需的所有 MATLAB 代码、MEX 文件和支持文件是否已包含在存档中。若要在系统命令行中使用 MATLAB 测试应用程序,请按照本主题中的说明配置系统库路径,以便使用您的 MATLAB 安装进行测试。此配置使用与 MATLAB Runtime 提供的相同的核心库,但直接从您的 MATLAB 安装文件夹中调用这些库。最终部署的应用程序需要在终端用户系统上安装 MATLAB Runtime。application-name
库路径环境变量和 MATLAB 文件夹
| 操作系统 | 环境变量 | 文件夹 |
|---|---|---|
| Windows® | PATH | |
| Linux® | LD_LIBRARY_PATH |
|
| macOS(Apple 芯片) | DYLD_LIBRARY_PATH |
|
Windows
要配置您的 Windows 系统,使其在测试打包应用程序时使用 MATLAB 安装库:
在 MATLAB 命令行窗口中运行
matlabroot命令,以确定您的 MATLAB 安装目录。运行
C:\Windows\System32\SystemPropertiesAdvanced.exe并点击环境变量按钮。选择系统变量路径,然后点击编辑。
注意
如果您没有管理员权限,请改选用户变量路径。
点击新建并添加文件夹
。例如,如果在默认位置使用 MATLAB R2026a:<MATLAB_INSTALL_DIR>\runtime\win64C:\Program Files\MATLAB\R2026a\runtime\win64点击确定应用更改。
打开一个新的命令提示符窗口,并运行以下命令以验证配置:
echo %PATH%
注意
如果您的路径中存在多个 MATLAB 版本,应用程序将使用列表中第一个版本。请确保开发版本优先显示,以确保测试的一致性。
Linux
要配置您的 Linux 系统,使其在测试打包应用程序时使用 MATLAB 安装库:
在 MATLAB 命令行窗口中运行
matlabroot命令,以确定您的 MATLAB 安装目录。在终端中显示
LD_LIBRARY_PATH的当前值:echo $LD_LIBRARY_PATH追加 MATLAB 库文件夹到当前会话的
LD_LIBRARY_PATH变量中:export LD_LIBRARY_PATH="${LD_LIBRARY_PATH:+${LD_LIBRARY_PATH}:}\ <MATLAB_INSTALL_DIR>/runtime/glnxa64:\ <MATLAB_INSTALL_DIR>/bin/glnxa64:\ <MATLAB_INSTALL_DIR>/sys/os/glnxa64:\ <MATLAB_INSTALL_DIR>/extern/bin/glnxa64"例如,如果您的 MATLAB 安装在
/usr/local/MATLAB/R2026a中:export LD_LIBRARY_PATH="${LD_LIBRARY_PATH:+${LD_LIBRARY_PATH}:}\ /usr/local/MATLAB/R2026a/runtime/glnxa64:\ /usr/local/MATLAB/R2026a/bin/glnxa64:\ /usr/local/MATLAB/R2026a/sys/os/glnxa64:\ /usr/local/MATLAB/R2026a/extern/bin/glnxa64"验证更新后的路径:
echo $LD_LIBRARY_PATH请检查您的 GNU C 库 (
glibc) 版本:ldd --version如果版本为 2.17 或更低,请将
glibc兼容层添加到LD_PRELOAD环境变量中:export LD_PRELOAD="${LD_PRELOAD:+${LD_PRELOAD}:}\ <MATLAB_INSTALL_DIR>/bin/glnxa64/glibc-2.17_shim.so"
注意
如果遇到图形显示问题,请在您的 LD_LIBRARY_PATH 后添加 <MATLAB_INSTALL_DIR>/sys/opengl/lib/glnxa64。
本指南适用于 Bash 命令行环境。有关其他 shell,请参阅您的 shell 文档。
macOS
要配置您的 macOS 系统,以便在测试编译后的应用程序时使用 MATLAB 安装库:
在 MATLAB 命令行窗口中运行
matlabroot命令,以确定您的 MATLAB 安装目录。在终端中显示
LD_LIBRARY_PATH的当前值:echo $DYLD_LIBRARY_PATH追加 MATLAB 库文件夹到
DYLD_LIBRARY_PATH中:export DYLD_LIBRARY_PATH="${DYLD_LIBRARY_PATH:+${DYLD_LIBRARY_PATH}:}\ <MATLAB_INSTALL_DIR>/runtime/maca64:\ <MATLAB_INSTALL_DIR>/bin/maca64:\ <MATLAB_INSTALL_DIR>/sys/os/maca64:\ <MATLAB_INSTALL_DIR>/extern/bin/maca64"例如,当 MATLAB 安装在
/Applications/MATLAB_R2026a.app中时:export DYLD_LIBRARY_PATH="${DYLD_LIBRARY_PATH:+${DYLD_LIBRARY_PATH}:}\ /Applications/MATLAB_R2026a.app/runtime/maca64:\ /Applications/MATLAB_R2026a.app/bin/maca64:\ /Applications/MATLAB_R2026a.app/sys/os/maca64:\ /Applications/MATLAB_R2026a.app/extern/bin/maca64"验证更新后的路径:
echo $DYLD_LIBRARY_PATH
本指南适用于 Bash 或 Zsh 命令行环境。有关其他 shell,请参阅您的 shell 文档。
注意
在 macOS 上,系统完整性保护 (SIP) 可能会阻止 DYLD_LIBRARY_PATH 被传递给子进程。您可能需要在设置环境变量的同一终端会话中运行应用程序。
永久设置库路径
虽然建议在测试时临时设置路径,但如有需要,也可以将其永久设置:
Windows
关于永久性路径设置的内容,已在 Windows 部分通过系统属性对话框进行了说明。
Linux 和 macOS
要在 Linux 或 macOS 上永久设置库路径:
运行以下命令以确定您的 shell:
echo $SHELL将导出命令添加到您的 shell 配置文件中:
对于 Bash 终端,请编辑
~/.bash_profile或~/.bashrc文件,并从上文的 Linux 或 macOS 部分添加相应的 export 命令。对于 Zsh,请编辑
~/.zprofile或~/.zshrc文件,并从上文的 Linux 或 macOS 部分中添加相应的 export 命令。
保存文件并重新加载。
source ~/.bashrc # For Bash source ~/.zshrc # For Zsh
小心
永久设置 MATLAB 库路径可能会与使用相同库路径的其他应用程序发生冲突。请考虑以下替代方案:
在测试期间,仅为当前会话设置路径。
使用在执行前设置环境的特定应用程序包装器脚本。
在生产环境中部署时,请务必使用 MATLAB Runtime,切勿依赖 MATLAB 安装。有关详细信息,请参阅 为部署设置 MATLAB Runtime 库路径。