【问题标题】:Matlab Mex file compileMatlab Mex 文件编译
【发布时间】:2015-04-18 03:04:51
【问题描述】:

我正在尝试编译一个 mex 文件以在 matlab 中使用套接字连接。问题是它总是说我没有安装 sdk 或编译器。但我已经安装了 Visual Studio 2010 Express、Visual Studio 2012 Express、Visual Studio 2012 Professional 并没有改变错误。我也安装了sdk。有什么我可以尝试的吗? matlab 版本是 R2012b,我使用的是 windows 7、64 位。

谢谢!

【问题讨论】:

  • 我相信 VS2012 Express 默认不附带 64 位编译器,因此不适用于从 64 位 MATLAB 进行 MEXing。你试过 32 位的 MATLAB 吗?

标签: matlab mex


【解决方案1】:

您可以尝试gnumex,它可以让您访问 Windows 上的 mingw 编译器。它适用于mingw-w64,这是mingw 的64 位版本。您必须安装 mingw 编译器套件,然后在 Matlab 中运行 gnumex 以告诉它 mingw 在哪里并进行设置。

【讨论】:

    【解决方案2】:

    我相信只有最新的 R2013a 支持 Visual Studio 2012。为您的 MATLAB 版本使用 VS2010。

    此外,VS 的 Express 版本不包含 64 位编译器。您需要获得专业版,或者下载免费的 Windows SDK。

    查看supported compilers的列表了解更多信息

    【讨论】:

    【解决方案3】:

    你问的是如何直接在 Matlab 的命令行上编译 mex 文件。

    另一种方法是从 Visual Studio 编译 mex 文件。你可能对我的回答感兴趣

    No C++ compiler found in MATLAB using mex

    【讨论】:

      【解决方案4】:

      您是否运行过mex -setup 来告诉MATLAB您要使用哪个 编译器?

      更多信息请参见this page on Building MEX-Files

      【讨论】:

      • 是的,我使用了 mex -setup。我得到的是我没有编译器……但我有 Visual Studio 2012 Professional……
      【解决方案5】:
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-10
      • 2014-01-31
      相关资源
      最近更新 更多