在 Matlab 中安装 C 编译器
Posted
技术标签:
【中文标题】在 Matlab 中安装 C 编译器【英文标题】:Installing a C compiler in Matlab 【发布时间】:2017-12-10 18:38:56 【问题描述】:我想从 lib 文件中调用 MATLAB 函数(用 C 语言编译 - 可能在 MSVS 中)。
我在 Mathworks 上找到的所有说明都让我明白: "未找到支持的编译器或 SDK。您可以安装免费提供的 MinGW-w64 C/C++ 编译器;请参阅安装 MinGW-w64 编译器"
我会按照说明进行操作,但我注意到了这一点: “Microsoft® Visual Studio® 生成的库 (.lib) 文件与 MinGW 不兼容”
所以我宁愿不这样做。我在我的(Windows)计算机上安装了 MSVS,我无法在任何地方找到有关如何“告诉”Matlab 使用此编译器的说明。
任何人都可以指出如何在 Matlab 中定义 C 编译器(MinGW 除外)?
附:我一直在使用编码器工具箱并生成 MEX 文件,所以我猜我的 Matlab 在某个地方确实可以访问 C 编译器
【问题讨论】:
MATLAB r2016b - 我想我已经解决了这个问题 - 谢谢:) 【参考方案1】:适用于 Windows MatLab 安装的免费 C 编译器的选项越来越少。上次我用 MatLab 尝试 MinGW 时,失败了。 Visual Studio Community 2017 也不起作用。如果您可以找到它的安装程序,Visual Studio Community 2015 确实可以工作。这就是我在实验室中部署的。您可以运行 MatLab 命令
mex -setup
让 MatLab 显示系统上找到的兼容编译器列表(如果有)。如果有多个编译器,您还可以选择要使用的编译器。
【讨论】:
【参考方案2】:好的,问题解决了
我安装了 Windows SDK 7.1
如果没有安装 .Net 4,SDK 7.1 将不会安装 C 编译器
.Net 4 附带 Windows 10 但 SDK 7.1 无法识别它
在这里how to install SDK7.1 on Win10我找到了解决这个问题的方法...
现在我的 Matlab 认识到我有一个编译器 :)
【讨论】:
以上是关于在 Matlab 中安装 C 编译器的主要内容,如果未能解决你的问题,请参考以下文章
Debian系统中如何将matlab编译后的代码集成到c++中