测试失败
成功编译应用程序之后,下一步是在开发机器上测试它,并在目标机器上部署它。通常目标计算机没有MATLAB®安装和要求MATLAB运行时安装。的分配包括所有所需的应用程序要运行的文件,包括可执行文件,部署归档和的MATLAB运行时。
在开发机器上运行应用程序来测试应用程序MATLAB运行时附带MATLAB编译器™。这将验证库依赖关系是正确的,可部署的归档文件可以被提取,应用程序所需的所有MATLAB代码、mex文件和支持文件都包含在归档文件中。万博1manbetx如果在测试应用程序时遇到错误,右侧列中的问题可以帮助您隔离问题。
您能够从什么地方执行应用程序MATLAB吗?
在开发计算机上,你可以测试通过发布应用程序的执行!
应用名称
在MATLAB提示符下。如果您的应用程序在MATLAB内执行,而不是从外部执行,这可能表明系统有问题路径
变量。
应用程序是否开始执行并产生结果MATLAB或其他错误吗?
确保在编译应用程序时包含了所有必要的文件(参见readme.txt文件
与你的编译详细介绍)生成的文件。
从主MATLAB文件中调用的函数将自动包含MATLAB编译器;但是,未显式调用的函数(例如通过EVAL)需要在编译时使用-一个
开关的MCC
命令。此外,任何支持文件如万博1manbetx.mat
,。文本
,或. html
文件需要添加到归档中-一个
开关。MATLAB和可编译的相关工具箱的功能有一定的限制。检查文档,查看应用程序的MATLAB文件中使用的函数是否有效。检查文件mccExcludedFiles.log
在开发机器上。此文件列出了从应用程序中调用的所有无法编译的函数。
你有很多MATLAB版本安装吗?
生成的可执行文件MATLAB编译器被设计成在MATLAB的多个版本安装的环境中运行。一些旧版本的MATLAB的可能不是这种架构完全兼容。
在Windows上®,确保matlabroot
\ runtime \ win64
您正在编译的MATLAB版本的matlabroot
\ runtime \ win64
其他版本的MATLAB安装的路径
您计算机上的环境变量。
类似地,在UNIX中,确保动态库路径(LD_LIBRARY_PATH
在Linux上®)匹配。通过比较printenv !
在MATLAB提示符和printenv
在shell提示符下。使用此路径允许您使用MCC
从操作系统命令行。
如果你正在测试一个独立的可执行程序或共享的库和驱动程序,你安装了MATLAB运行时吗?
文件中包含独立可执行文件或共享库所需的所有共享库MATLAB运行时。安装MATLAB运行时任何部署目标都需要。
你是否收到一个错误消息,关于一个丢失的DLL?
指示丢失的DLL如错误消息mclmcrrt7x.dll
要么mclmcrrt7x.so
一般是由于安装不正确造成的吗MATLAB运行时。也有可能MATLAB运行时正确安装,但是路径
,LD_LIBRARY_PATH
,或DYLD_LIBRARY_PATH
变量设置不正确。有关安装信息MATLAB运行时在部署计算机上,请参见安装和配置MATLAB运行时。
谨慎
不通过移动库或其他文件来解决这些问题MATLAB运行时文件夹结构。这个系统是为适应不同的人而设计的MATLAB运行时在同一机器上操作的版本。文件夹结构是这个特性的一个重要部分。
你的系统的显卡支持图形应用程序吗?万博1manbetx
在现有的硬件显卡不支持图形应用程序的情况下,你应该使用软件的OpenGL。万博1manbetxOpenGL库是通过附加的应用程序可见matlab / sys / opengl / lib /拱门
到LD_LIBRARY_PATH
。例如:
SETENV LD_LIBRARY_PATH $ LD_LIBRARY_PATH:MATLAB / SYS / OpenGL的/ lib目录/拱
对于Linux中的MATLAB图形问题,设置环境变量LD_LIBRARY_PATH
:
setenv LD_LIBRARY_PATH MATLAB / sys /美元opengl / lib / glnxa64: LD_LIBRARY_PATH美元
OpenGL的是正确地安装在系统上?
当搜索OpenGL库时,MATLAB运行时首先查找系统库路径上。如果没有发现有OpenGL的,它将使用LD_LIBRARY_PATH
环境变量来查找库。如果您收到由于OpenGL的故障库没有被找到,你可以附加OpenGL库的位置LD_LIBRARY_PATH
环境变量。例如:
SETENV LD_LIBRARY_PATH $ LD_LIBRARY_PATH:MATLAB / SYS / OpenGL的/ lib目录/拱