【发布时间】:2017-06-21 12:19:41
【问题描述】:
我有一个使用 SPM8 工具箱的用户编写的 MATLAB 程序。如果直接运行,它工作正常。但是,编译再运行时,出现如下错误:
Undefined function 'ft_datatype_sens' for input arguments of type 'struct'
此功能来自与 SPM8 工具箱捆绑在一起的 Fieldtrip 工具箱。 startup.m 包含以下内容:
if(isdeployed==false)
addpath(genpath('/cm/shared/apps/matlab/spm/08'))
spm('defaults', 'eeg')
spm_get_defaults('cmdline',true)
disp('SPM path is set')
end
我自己不是 MATLAB 用户,我在黑暗中摸索,但我的假设是找不到 Fieldtrip 工具箱。
任何人都可以对此有所了解吗?
【问题讨论】:
-
已编译的应用程序不支持更改路径。如果您正在编译程序,请尝试使用 mcc 的“-C”标志来使用 zip 实用程序检查生成的包文件是否存在。
-
感谢您的提示。该包确实包含文件'ft_datatype_sens.m',所以看起来没问题。但是,我不明白您所说的“改变路径”是什么意思。路径不就是我在编译之前设置的,只是编译成独立的二进制文件吗?还是应该将外部工具箱移动到 MATLAB 安装的“工具箱”目录中?
-
如果文件在那里并且在编译之前添加了路径,它应该可以工作。不知道还有什么导致错误。我将从对工具箱的简单调用开始,以检查它是针对此功能还是针对整个工具箱。
标签: matlab mcc matlab-spm