我是一位经验丰富的 MATLAB 用户,但对 C 和 MEX 文件完全陌生。我有一个用 C 语言编写的复杂程序,需要从 MATLAB 中调用。该程序由一个文件夹中的几十个文件组成,包括一个名为 main.c 的文件,它处理来自命令行的输入,将结果传递给其他执行实际计算的类。
通常,要从命令行安装这个程序,我会在 UNIX 命令提示符下运行 ./configure, make。然后,要运行程序,./runMyProgram -f input_file.txt -p some_parameters。该程序将一个包含数字列表的文本文件作为输入,并在命令窗口中打印一个结果表。我想为程序提供一个 MATLAB 数组(而不是 .txt 文件)并取回一个数组(而不是打印的结果表)。
我已经阅读了 The Mathworks 的 MEX 文档(我发现它相当不透明)以及其他一些“教程”,但我完全迷失了——这些示例是针对非常简单的单文件 C 程序的,并没有真正讨论如何处理更大更复杂的程序。用执行相同操作的 MEX 文件替换 main.c 文件是否足够?另外,如何在 MATLAB 中编译整个包?
我将不胜感激任何关于从哪里开始的简单英语建议,或指向任何以易于理解的方式处理该主题的教程。