Matlab Mex的文件编译

Matlab Mex的文件编译

问题描述:

我想编译一个mex文件在matlab中使用套接字连接。问题在于它总是说我没有安装sdk或编译器。但我已经安装了visual studio 2010 express,visual studio 2012 express,visual studio 2012 professional,而且没有任何更改错误。我也安装了SDK。有什么我可以尝试吗? matlab版本是R2012b,我使用Windows 7,64位。Matlab Mex的文件编译

谢谢!

+0

我相信VS2012快递不来,默认为64位编译这个环节西港岛线是有用的,所以会为MEXing从64位MATLAB不起作用。你有没有试过32位的MATLAB? – wakjah 2013-04-23 07:15:41

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

了解更多信息

+0

是的,我用mex -setup。我得到的是我没有编译器......但我有Visual Studio 2012专业版... – 2013-04-23 02:44:33

this page on Building MEX-Files相信的Visual Studio 2012仅支持最新的R2013a。使用VS2010作为你的MATLAB版本。

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

supported compilers名单你问如何直接编译Matlab的命令行上的MEX文件的详细信息

+0

这里是64位R2012b的相应页面:http://www.mathworks.com/support/compilers/R2012b /win64.html – Amro 2013-04-23 09:52:48

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

No C++ compiler found in MATLAB using mex

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