2015-02-05 6 views
0

나는 MATLAB 안에 deploytool을 실행하면 Windows 64 설치 가능 exe에 MATLAB 명령 행 응용 프로그램을 올바르게 컴파일하고 패키지하는 deploytool 프로젝트가 있습니다. 패키징 프로세스는 MATLAB deploytool GUI 내부에 빌드하면 올바르게 작동합니다.MATLAB에서 작동하지만 명령 행에서 실패하는 MATLAB deploytool 프로젝트를 디버깅하는 방법은 무엇입니까?

Windows 명령 줄에서 deploytool을 실행하면 동일한 프로젝트가 for_testing 폴더의 결과와 함께 응용 프로그램을 올바르게 빌드하지만 "패키지 실패"라는 오류 메시지와 함께 설치 가능 이미지를 만들지 못하지만 추가 정보. 문제를 해결하는 데 도움이되는 로그 파일이나 기타 데이터를 찾을 수 없습니다.

도와주세요.

은 여기 MATLAB 내부에서 출력되는 64 비트 윈도우 7

하에 MATLAB R2014a를 사용하고 (deploytool을위한 동일 또는 applicationcompiler). 여기

>> applicationCompiler -package nam_converter.prj 
Some of the build deliverables are missing. Rebuilding the project. 
ant: 

<ant> 

    <mkdir dir="C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter\for_redistribution" /> 

    <mkdir dir="C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter\for_testing" /> 

</ant> 
mcc -C -o nam_converter -W main:nam_converter -T link:exe -d C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter\for_testing -R '-logfile,nam_converter.log' -v C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter.m 
Compiler version: 5.1 (R2014a) 
Dependency analysis by REQUIREMENTS. 
Warning: Duplicate directory name: C:\Program 
Files\MATLAB\R2014a\toolbox\matlab\winfun\NET 
> In path at 33 
    In requirements at 156 
Warning: Duplicate directory name: C:\Program 
Files\MATLAB\R2014a\toolbox\rtw\targets\AUTOSAR\AUTOSAR 
> In path at 33 
    In requirements at 156 
Warning: Duplicate directory name: C:\Program 
Files\MATLAB\R2014a\toolbox\rtw\targets\AUTOSAR\AUTOSAR\dataclasses 
> In path at 33 
    In requirements at 156 
Warning: Duplicate directory name: C:\Program 
Files\MATLAB\R2014a\toolbox\simulink\simulink\MPlayIO 
> In path at 33 
    In requirements at 156 
Warning: Duplicate directory name: C:\Program 
Files\MATLAB\R2014a\toolbox\slvnv\reqmgt\RTExplorer 
> In path at 33 
    In requirements at 156 
[Warning: Adding path 
"C:\Users\ndavies\Documents\matlab_utilities\nam_converter" to Compiler path 
instance. 
Parsing file "C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter.m" 
    (Referenced from: "Compiler Command Line"). 
Parsing file "C:\Program Files\MATLAB\R2014a\toolbox\compiler\deploy\deployprint.m" 
    (Referenced from: "Compiler Command Line"). 
Parsing file "C:\Program Files\MATLAB\R2014a\toolbox\compiler\deploy\printdlg.m" 
    (Referenced from: "Compiler Command Line"). 
Deleting 0 temporary MEX authorization files. 
Generating file "C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter\for_testing\readme.txt". 
Start packaging process 
Packaging... 
Adding custom icon C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter_resources\icon.ico to C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter\for_testing\nam_converter.exe. 
Attempting to embed the CTF archive into the application C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter\for_testing\nam_converter.exe. 
Finished embedding CTF archive. Deleting the external CTF archive. 
Creating the bundle... 
Web based installer created at C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter\for_redistribution\nam_converter_installer_web.exe. 
Packaging complete. 
Package finished 

명령 창에서 출력 : 무엇 약간 이상한 것은 MATLAB 명령 프롬프트가 백그라운드에서 실행되는 것처럼 처리하지만 이벤트가 여전히 실행되고있는 MCC 줄 끝에서 돌아 오는 것입니다 :

C:\Users\ndavies\Documents\matlab_utilities\nam_converter>deploytool -package nam_converter.prj 
Some of the build deliverables are missing. Rebuilding the project. 
ant: 
<ant> 
    <mkdir dir="C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter\for_redistribution" /> 
    <mkdir dir="C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter\for_testing" /> 
</ant> 
mcc -C -o nam_converter -W main:nam_converter -T link:exe -d C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter\for_testing -R '-logfile,nam_converter.log' -v C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter.m 
lprj 
mcc -C -o 'nam_converter' -W 'main:nam_converter' -T 'link:exe' -d 'C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter\for_testing' -R -logfile,nam_converter.log -v 'C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter.m' 
Compiler version: 5.1 (R2014a) 
Dependency analysis by REQUIREMENTS. 
Warning: Duplicate directory name: C:\Program 
Files\MATLAB\R2014a\toolbox\matlab\winfun\NET 
> In path at 33 
    In requirements at 156 
Warning: Duplicate directory name: C:\Program 
Files\MATLAB\R2014a\toolbox\rtw\targets\AUTOSAR\AUTOSAR 
> In path at 33 
    In requirements at 156 
Warning: Duplicate directory name: C:\Program 
Files\MATLAB\R2014a\toolbox\rtw\targets\AUTOSAR\AUTOSAR\dataclasses 
> In path at 33 
    In requirements at 156 
Warning: Duplicate directory name: C:\Program 
Files\MATLAB\R2014a\toolbox\simulink\simulink\MPlayIO 
> In path at 33 
    In requirements at 156 
Warning: Duplicate directory name: C:\Program 
Files\MATLAB\R2014a\toolbox\slvnv\reqmgt\RTExplorer 
> In path at 33 
    In requirements at 156 
Warning: Adding path 
"C:\Users\ndavies\Documents\matlab_utilities\nam_converter" to Compiler path 
instance. 
Parsing file "C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter.m" 
     (Referenced from: "Compiler Command Line"). 
Parsing file "C:\Program Files\MATLAB\R2014a\toolbox\compiler\deploy\deployprint.m" 
     (Referenced from: "Compiler Command Line"). 
Parsing file "C:\Program Files\MATLAB\R2014a\toolbox\compiler\deploy\printdlg.m" 
     (Referenced from: "Compiler Command Line"). 
Deleting 0 temporary MEX authorization files. 
Generating file "C:\Users\ndavies\Documents\matlab_utilities\nam_converter\nam_converter\for_testing\readme.txt". 
Start packaging process 
Package failed 

C:\Users\ndavies\Documents\matlab_utilities\nam_converter> 
+0

즉각적인 문제는 무엇인지 모르겠지만 Simulink, RTW 및 Simulink V 및 V는 MATLAB Compiler에서 지원되지 않으므로 전혀 문제가 발생하지 않습니다. –

+0

@Sam, 왜 그렇게 말하니? Simulink 또는 RTW를 사용하지 않습니다. 내 응용 프로그램은 순수한 MATLAB입니다. 실수로 해당 구성 요소를 호출하는 것을 발견 했습니까? –

+0

질문에 포함 된 출력의 경고는 해당 제품의 일부인 디렉토리를 나타냅니다. 애플리케이션에서 해당 제품을 사용하지 않는다고 확신하는 경우 경로에있는 제품에 문제가있을 수 있습니까? 아마 당신은 (어쨌든 deploytool에서'mcc '로 이것을 수행하는 방법을 모르겠다.) 프로젝트 설정으로 들어가서 참조 된 툴박스 목록에서 이들 제품을 명시 적으로 제거 할 수있다. 나는 단지 추측하고있다. –

답변

1

이 내용은 R2014b에서 수정 된 MATLAB R2014a의 결함입니다.