2012-08-27 5 views
1

특정 Microsoft 컴파일러 파일을 알고 싶습니다. Matlab 코드를 컴파일해야합니다. mex -setup을 실행하면 mex가 다음 디렉토리에서 컴파일러를 찾을 수 있습니다. d:\Program Files (x86)\Microsoft Visual Studio 10.0 그러나 내가 탐색 할 때 실제로 컴파일러가 될 파일이 없습니다. 내 응용 프로그램을 빌드하고 싶습니다. 그러나 작동하지 않습니다. 실제로 Matlab이 컴파일러를 찾은 것 같습니다. 그러나 오류 (코드 = 53)가 발생합니다. An error occurred while shelling out to mbuild 그래서 내 배치는 Deployement 도구 설정 및 컴파일러 디렉토리와 같은 옵션을 추가합니다 (이미 mex로 설정 한 경우에도 해당). 그러나 찾을 수 없습니다. d:\Program Files (x86)\Microsoft Visual Studio 10.0 컴파일러의 이름을 모르겠습니다. 정말이 도움이 필요합니다. 감사!Matlab 배포 도구, Microsoft 컴파일러

답변

1

mex -setup이 올바르게 작동하려면 실제 컴파일러가 무엇인지 알 필요가 없습니다. 당신이 그 파일 중 하나를 검사 할 경우에는 이름을 찾을 수

Select a compiler: 
[1] Intel C++ 12.0 (with Microsoft Visual C++ 2010 linker) in C:\Program Files (x86)\Intel\ComposerXE-2011 
[2] Intel Visual Fortran 12.0 (with Microsoft Visual C++ 2010 linker) in C:\Program Files (x86)\Intel\ComposerXE-2011 
[3] Microsoft Visual C++ 2010 in C:\Program Files (x86)\Microsoft Visual Studio 10.0 

[0] None 

을 내가 [3]를 선택하면 정보를 출력 라인

Trying to update options file: D:\Users\my.name\AppData\Roaming\MathWorks\MATLAB\R2012a\mexopts.bat 
From template:    C:\PROGRA~1\MATLAB\R2012a\bin\win64\mexopts\msvc100opts.bat 

을 포함한다 : 나는 mex -setup를 실행하면 나는이 같은 목록을 컴파일러 (cl.exe이라고하며 Matlab에서 찾고있는 디렉토리 아래에 몇 가지 다른 버전이 있습니다) COMPILER이라는 스크립트 변수의 값으로 할당됩니다. 또한 코드를 mex-file로 컴파일 할 때 mex이 사용하는 모든 설정을 찾을 수 있습니다. 이 정보에서 나머지 문제를 진단 할 수 있습니다. 당신이 '도움'로 문제 (들) 해결을 편집하고 정확하게 오류 메시지를 설명 할 수없는 경우

+0

이 유용한 정보 주셔서 감사합니다. 마침내 내 애플리케이션을 구축 할 수있었습니다. 내 버전의 Matlab은 MSVC2010에 문제가있는 것으로 알려진 2010.a였습니다. 나는 http://www.mathworks.com/support/solutions/en/data/1-D5W493/?solution=1-D5W493 여기에서 구할 수있는 패치를 시도했지만, 최소한 deploytool과 같이 충분하지 않은 것처럼 보입니다! 빌드는 Matlab 2011.a에서 성공적으로 완료되었습니다. – CTZStef