gpt4 book ai didi

matlab - 编译 MATLAB 以进行部署,包括工具箱

转载 作者:行者123 更新时间:2023-12-02 04:10:05 25 4
gpt4 key购买 nike

我有一个 MATLAB 脚本,必须对其进行编译才能部署。我正在使用命令“mcc”,但是,我还需要包含工具箱:PRTools ( http://37steps.com/software/ ) 和 dd_tools ( http://prlab.tudelft.nl/david-tax/dd_tools.html )。我试图包含使用命令 addpath(),但它不起作用。我不知道如何包含这些工具箱。我尝试使用:

if ~isdeployed
addpath PRTools
addpath dd_tools
end

但是效果不太好。

最佳答案

用于使用 mcc 进行部署,您应该在编译应用程序之前将路径添加到 MATLAB 路径(使用 pathtooladdpath ),而不是调用 addpath从您的代码中。

mcc静态分析您的代码以确定可执行文件中需要包含哪些内容。静态代码分析的一部分包括查找代码中的所有函数调用并找到相应的源文件。既然你打电话addpath在您的代码中,MATLAB 无法正确找到所有工具箱函数(因为它们在运行时动态添加到路径中,并且代码是静态分析的),并将忽略这些文件。

如果您首先将它们添加到 MATLAB 路径中,mcc将能够静态分析您的代码,找到所有需要的工具箱函数,并将它们包含在生成的可执行文件中。

修改路径的更简洁的替代方法是使用 -I option调用mcc时指定要包含的特定文件夹。

-I Add a new folder path to the list of included folders. Each -I option adds a folder to the beginning of the list of paths to search. For example,

-I <directory1> -I <directory2>

sets up the search path so that directory1 is searched first for MATLAB files, followed by directory2. This option is important for standalone compilation where the MATLAB path is not available.

对于你的情况,这会是这样的

mcc -m main.m -I PRTools -I dd_tools

关于matlab - 编译 MATLAB 以进行部署,包括工具箱,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37151637/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com