0

当我试图.m在 Linux 机器上制作我的 -files 的可执行文件时,一些.m-files 工作得非常好。

.m但是,在-file 中有相机输入的一个文件给了我这个错误:

Depfun 错误:'来自 MEX 文件的意外标准异常。What() is: ..' Error using mcc Error execution mcc, return status = 1 (0x1).

但是当我.m在 Windows 和 R2012a 上使用相同的文件时,它可以正常工作而没有任何错误。

我在这里发现了一个错误报告- 这是一个类似的问题吗?

我该如何解决?

这是我的.m-file的简单代码:

function yuv()
 vid1 = videoinput('linuxvideo', 1, 'YUYV_1280x960');
 set(vid1,'FramesPerTrigger',1);
 start(vid1);
 imageData1=getdata(vid1,1);
 imageData=ycbcr2rgb(imageData1);
 imagesc(imageData(:,:,:,1));
end
4

1 回答 1

1

我在 Linux 上的 R2013a 下遇到了相同的 Depfun 错误“What() is: ..”,但在使用不同的操作系统或较旧的 MATLAB 版本编译我的代码时没有错误。按照您链接到的错误报告为我修复它。

错误报告中链接到的 zip 文件中,您会找到一个 depfun.opts 文件。重命名或移动位于其中的原始 depfun.opts 文件[matlabroot]/toolbox/compiler并将新文件复制到其位置。

只需将新的 depfun.opts 文件放置到位,我就能够在 Linux 上使用 R2013a 进行编译。

另请注意,错误报告说它可能是由importdata函数或并行计算工具箱引起的,但我没有使用其中任何一个。

于 2013-07-01T19:38:05.490 回答