【发布时间】:2014-10-15 21:56:18
【问题描述】:
我正在寻找一种在 Windows 7 计算机上编译 Unix MEX 文件的简单方法。
MEX 文件在 Mac OS X 10.9 上的 MATLAB 2014a 中顺利编译(使用“XCode with Clang”作为编译器)。但是,与我一起工作的一些人在使用 Windows 7.1 SDK 中的 C 编译器在 Windows 7 中编译它们时遇到了麻烦。
我知道,如果我在 MATLAB 中使用 GCC 编译 MEX 文件,或许可以避免这些错误。我想知道是否有人知道如何。我很高兴下载和编辑任何必要的文件,以便我可以 a) 使用“MEX”命令在 MATLAB 中编译 MEX 文件,b) 保证“-I”和“-L”指令也将传递给 MEX编译器。
注意,我的问题与to this post from 2+ years ago 非常相似。也就是说,我已经发布了一个新帖子,因为 a) MATLAB/MinGW/MEX 从那时起都有重大更新(甚至不确定 MinGW 是否是摆脱这种混乱的最简单方法); b) 有一个 64 位的东西(不确定是否有问题)和 c) "-I" 和 "-L" 选项很重要。
【问题讨论】:
-
好的,但是您是否尝试过该问题中建议的任何解决方案?如果是这样,问题是什么?
-
@Amro 是的!我首先尝试了this 解决方案,但实际上最终破坏了 MATLAB MEX 安装程序(我怀疑是因为 gnumex 太旧了)。我也尝试过适配this solution,但是在目录中找不到mexopts.bat文件。我认为值得提出一个新问题,因为设置在很多方面都不同/已经有足够的时间出现新的解决方案。
-
好的,我发布了一些关于 MinGW-w64 的说明。但是使用免费的 Windows SDK 也同样简单(也许更容易,因为
mex -setup可以开箱即用地检测到它)。