1

私はオンで、関数のコンパイルWindows Vistaに使用したいと考えています。実行時に見られるように、システムには しかありませんでした:MATLABC++lcc compilermex -setup

mex -setup
Welcome to mex -setup.  This utility will help you set up  
a default compiler.  For a list of supported compilers, see  
http://www.mathworks.com/support/compilers/R2011a/win32.html 
Please choose your compiler for building MEX-files: 
Would you like mex to locate installed compilers [y]/n? y
Select a compiler: 
[1] Lcc-win32 C 2.4.1 in C:\PROGRA~1\MATLAB\R2011a\sys\lcc 
[0] None 
Compiler:

lcc は C++ では機能しないため、ここ (Windows サイト)からWindows SDK 7.1をインストールしました。を実行して、インストール先のディレクトリを確認し、. 次に、もう一度実行してコンパイラを に設定し、インストールされているコンパイラを見つけないように指示してオプションを選択すると、MATLAB が既定で参照するパスは;のパスになります。. 私はそれをオーバーライドしようとしましたが、そこでは機能しません。実行された正確なアクションは次のとおりです。Windows SDK 7.1 Command PromptC:\Program Files\Microsoft SDKs\Windows\v7.1mex -setupMicrosoft Visual C++ 2010mexMicrosoft Visual C++ 2010Visual StudioC:\Program Files\Microsoft Visual Studio 10.0

>> mex -setup
Welcome to mex -setup.  This utility will help you set up  
a default compiler.  For a list of supported compilers, see  
http://www.mathworks.com/support/compilers/R2011a/win32.html 
Please choose your compiler for building MEX-files: 
Would you like mex to locate installed compilers [y]/n? n
Select a compiler: 
[1] Intel C++ 11.1 (with Microsoft Visual C++ 2008 SP1 linker) 
[2] Intel Visual Fortran 11.1 (with Microsoft Visual C++ 2008 SP1 linker) 
[3] Intel Visual Fortran 11.1 (with Microsoft Visual C++ 2008 Shell linker) 
[4] Lcc-win32 C 2.4.1 
[5] Microsoft Visual C++ 6.0 
[6] Microsoft Visual C++ 2005 SP1 
[7] Microsoft Visual C++ 2008 SP1 
[8] Microsoft Visual C++ 2010 
[9] Microsoft Visual C++ 2010 Express 
[10] Open WATCOM C++ 
[0] None 
Compiler: 8
Warning: The default location for Microsoft Visual C++ 2010 compiler is: 
     "C:\Program Files\Microsoft Visual Studio 10.0" 
     but either that directory does not exist or the configuration 
     is invalid. 
Use C:\Program Files\Microsoft Visual Studio 10.0 anyway [y]/n? n
Please enter the location of your compiler: [C:\Program Files\Microsoft Visual Studio 10.0] 
C:\Program Files\Microsoft SDKs\Windows\v7.1
Please verify your choices: 
Compiler: Microsoft Visual C++ 2010  
Location: C:\Program Files\Microsoft Visual Studio 10.0 
Are these correct [y]/n?  
***************************************************************************** 
Error: Microsoft Visual C++ 2010 requires the Microsoft Windows Software  
     Development Kit (SDK), but the SDK cannot be found.  Examine your   
     Microsoft Visual C++ 2010 installation. 
*****************************************************************************  
??? Error using ==> mex at 208
Unable to complete successfully.

ディレクトリが とは異なる必要があるかどうかC:\Program Files\Microsoft SDKs\Windows\v7.1、およびこのディレクトリを特定する方法があるかどうかはわかりません。また、ディレクトリを指定する方法が正しいかどうかもわかりません。ディレクトリ名を一重引用符で囲んでみましたが、唯一のバリエーションは、ビジュアルスタジオへのディレクトリが正しいかどうかを尋ねるのをやめることです.nと答えると、これだけが表示されます.

Compiler: Microsoft Visual C++ 2010  
Location: C:\Program Files\Microsoft Visual Studio 10.0 
Are these correct [y]/n? n
mex: No compiler selected. No action taken. 

MATLAB にコンパイラを追加して、C++ 関数/ファイルで mex を実行できるようにするにはどうすればよいですか?

4

1 に答える 1

2

迅速かつ簡単なアプローチを求めている (そして 64 ビットの matlab を使用していない) 場合は、Visual Studio 2010 C++ Express の無料コピーをダウンロードして使用することをお勧めします。そうすれば、 mex -setup が検出します。

于 2013-04-08T15:21:48.023 に答える