C++ソースからいくつかのMATLABMEXファイルをコンパイルしようとしています。私がコンパイルしようとしているファイルはここにあります; 32ビットシステムのMATLAB2012aでWindowsXPを使用しており、コンパイラとして使用するためにMicrosoft WindowsSDKv7.1をインストールしました。
コンパイルしようとすると、MATLABは次のエラーを出力します。
>> mex -O -largeArrayDims osc_free_address.c
osc_free_address.c
osc_free_address.c(1) : error C2059: syntax error : '<'
osc_free_address.c(37) : error C2015: too many characters in constant
osc_free_address.c(38) : error C2059: syntax error : '<'
osc_free_address.c(39) : error C2015: too many characters in constant
osc_free_address.c(39) : error C2015: too many characters in constant
osc_free_address.c(39) : error C2015: too many characters in constant
osc_free_address.c(41) : error C2018: unknown character '0x40'
osc_free_address.c(43) : error C2015: too many characters in constant
osc_free_address.c(44) : error C2015: too many characters in constant
osc_free_address.c(44) : error C2015: too many characters in constant
osc_free_address.c(44) : error C2015: too many characters in constant
osc_free_address.c(44) : error C2015: too many characters in constant
osc_free_address.c(46) : error C2059: syntax error : '<'
osc_free_address.c(82) : fatal error C1021: invalid preprocessor command 'page'
C:\PROGRA~1\MATLAB\R2012A\BIN\MEX.PL: Error: Compile of 'osc_free_address.c' failed.
Error using mex (line 206)
Unable to complete successfully.
mex -setupを使用して、 Microsoft WindowsSDKv7.1でコンパイラをセットアップしました。興味深いことに、システムにインストールしていますが、MATLABはMS Visual Studio C ++ 2008または2010を認識しません。また、Lcc-win32 C 2.4.1コンパイラ(MATLABで認識されます)を使用して同じようにコンパイルしてみました。上記のような効果。
この特定のC++ソースファイルのセットでは、コンパイルにlibloと呼ばれるものが必要になる可能性があることを理解しています(これがコンパイル時または実行時の要件かどうかはわかりません)。私が知っている限り、これらは正しくインストールされていますが、問題はここにもある可能性があります。
どんな助けでも大歓迎です。