0

我正在尝试使用该函数编译一个 Matlabmcc函数。我的函数将一行文本写入文件。

function hello()
    ofid = fopen('hello.txt','w');
    fprintf(ofid, 'Hello there, this is matlab.\n');
    fclose(ofid);
end

从 Matlab 控制台调用时,它按预期运行。但是,当我使用mcc

/opt/matlab/matlab2008a/bin/mcc -m hello.m

并将其运行为

./hello

它似乎永远运行并且不产生hello.txt文件。可执行文件和 Matlab 函数文件都在 Matlab 工作目录中。

我看不出我在使用mcc. 请帮忙。

4

1 回答 1

1

通常,您需要在执行 mcc 编译的应用程序时设置 MATLAB 运行时环境。

deploytool通过使用(从命令行)在此处编译 hello.m 程序,您可能会在第一次获得更多里程。MATLAB 的应用程序构建器将生成一个 run_hello.sh 文件,您可以仔细阅读该文件以了解他们如何设置库。然后,要执行您的程序,您实际上可以这样调用它:

./run_hello.sh /Applications/MATLAB/MATLAB_Runtime/v90/

注意:我刚刚为 MATLAB 运行时环境提供了一个通用位置,但实际位置会根据您的平台和构建应用程序的 MATLAB 版本而有所不同。

于 2016-01-17T08:57:01.977 回答