2013-04-23 211 views
3

我想編譯一個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

回答

0

您是否運行mex -setup來告訴MATLAB 哪個編譯器要使用?

瞭解更多信息

+0

是的,我用mex -setup。我得到的是我沒有編譯器......但我有Visual Studio 2012專業版... – 2013-04-23 02:44:33

1

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

2

你可以嘗試gnumex,它可以讓你訪問Windows MinGW的編譯器。它適用於mingw-w64這是mingw的64位版本。你必須安裝mingw編譯器套件,然後在Matlab中運行gnumex來告訴它mingw在哪裏並設置它。