2009-11-24 2 views
9

나는 잘 작동하는 배포 프로젝트를 만들었으며 이제는 다른 곳에서 사용할 수 있도록 소스 제어 저장소에 추가하려고합니다.
제가 직면 한 주된 문제는 deploytool에 생성 된 .prj 파일에 다른 컴퓨터에서는 작동하지 않는 절대 경로가 포함되어 있다는 것입니다.Matlab 배치 : 소스 제어에 파일을 추가 하시겠습니까?

  • deploytool없이 단지 mcc 사용하여 독립 실행 형 EXE 만들기 : 지금까지 나는 다음 시도했습니다. 이것은 잘 작동하지만 모든 것을 포함하는 최종 _pkg.exe을 만드는 방법을 찾을 수 있습니다. mcc는이 파일을 생성하지 못하는 것 같고 다른 도구는없는 것처럼 보입니다. 이게 사실인가요?
  • 절대 경로 대신 상대 경로를 포함하도록 .prj 파일을 편집하십시오. 이 부분은 .prj 파일에 MATLABPath이라는 섹션이 포함되어 있으며 항상 현재 setpath의 matlab로 대체되어 있기 때문에 부분적으로 만 작동합니다. 이 파일을 사용하는 사람은 사용시 변경되기 때문에 체크 아웃해야합니다.
  • .prj 파일을 생성하는 방법을 찾으십시오. mcc 설명서는 Project files created using either mcc or deploytool are eligible to use this option.이라고 말하면 mcc을 사용하여 .prj 파일을 만드는 방법을 제안했지만이 방법을 찾을 수 없었습니다.

이 상황에 대한 해결책이 있습니까?

+2

를 구축하여 즉석에서 PRJ에 VCPROJ를 변환하는 비주얼 스튜디오 2005 프로젝트를 사용합니다. –

답변

-2

여기는 mcc option documentation입니다. 나는 내 고객 센터를 사용하여 독립 실행 형 EXE 파일을 만드는 가장 유용한 것으로 나타났습니다 무엇

: (모든 컴파일 된 MATLAB 물건의 보관 임) CTF 파일을 생성 할

mcc -C -m <function.m> -a <fig> -a <dll> -a <etc> -d <outputPath> 

-C 옵션은 알 수 mcc을 등 별도의 파일. 하나의 exe를 사용하여 일부 대상 컴퓨터에서 문제가 발생했습니다.

-m 옵션을 사용하면 mcc에 exe를 생성합니다.

-a 옵션은 mcc에 지정된 파일을 패키지에 포함하도록 지시합니다. 예를 들어, 스크립트가 두 개의 무화과 파일과 데이터 파일을 사용한다면 출력 꾸러미에 넣어 지도록 각각에 대해 -a가 필요합니다.


(나는이 자신을 해본 적이 없다) 프로젝트 파일을 사용하는 MCC에게 : Windows에서 R2009a를 사용하는 경우

mcc -F <projectfile> 

또한,하는 known bug that requires some manifest manipulation있다.

+1

어쩌면 다음 번에는 태그가 아닌 질문 자체를 실제로 읽을 수 있습니다. – shoosh

+0

@shoosh - 네가 맞아, 나는 질문을 건너 뛰고 네가 물어 보지 않을 것으로 기대했던 것에 대답했다. 미안합니다. 실제로'deploytool'을 사용하는 방식으로 사용하지 않았으므로 _pkg.exe가 의미하는 바를 전혀 얻지 못했습니다. 나는 대답으로 뛰어 들기 전에 약간의 독서를 했어야했다. – mtrw

3

우리는 Matlab Builder JA에서도 같은 결과를 보았습니다. 경로가 절대적 일뿐만 아니라 Matlab은 경로에서 발견되는 다른 도구 상자를 추가합니다.이 도구 상자는 빌드 머신에 많은 라이센스가 없기 때문에 자극적입니다.

그래서 우리가 할 것은 :

  • 손으로 PRJ 파일이 절대 경로를 제거하는 편집
  • 이제까지 PRJ에서 확인하지 않음 소스 제어에 그것을 확인하고 고객 센터에 구축 파일을 deploytool로 수정 한 후 (편집자가 직접 변경)

개정 관리를 사용하면 명시 적으로 체크 아웃하지 않고 파일을 수정할 수 있으므로 deploytool은 문제가되지 않습니다. 그런데 왜 너는하고 싶니?

최종 포장기가 무엇인지는 모르지만 컴파일 된 바이너리와 MCR을 번들로 묶었다면 대체품을 작성하기 만하면됩니다.

관련 문제