한국의 맥 사용자에겐 거의 필수 유틸인 Movist를 컴파일해 보았습니다. 코드 업데이트도 안된지 꽤 되었고 그동안 snow leopard에서는 컴파일이 안되는 줄 알았는데 몇번의 시행 착오 끝에 컴파일에 성공했습니다. 컴파일은 되지만 동작이 정말 잘 되는지는 모르겠지만요.
Movist 홈페이지 : http://cocoable.tistory.com/
Movist 구글코드 페이지 : http://code.google.com/p/movist/
Movist 소스 저장소 : http://movist.googlecode.com/svn/trunk
Movist를 compile 하기 위해서는 git와 yasm이 설치되어 있어야 합니다.
MacOSX 용 git : http://code.google.com/p/git-osx-installer/downloads/list
FFmpeg library compile하기
-
$ svn checkout http://movist.googlecode.com/svn/trunk movist
- 우선 Movist 소스코드를 가져옵니다.
- movist/contrib 에 있는 bootstrap 파일을 수정합니다.
- movist/contrib/src 에 있는 build_ffmpeg_mt.sh 파일을 수정합니다.
- movist 디렉토리에서 build_extlib.sh를 실행합니다.
- patch 파일이 뭔가 문제가 있지만 컴파일은 일단 잘 됩니다.
- movist/contrib/lib 에 필요한 라이브러리가 생성되었습니다.
-
SDK_TARGET=10.4 를 SDK_TARGET=10.6 으로 수정
-
MACOSX_SDK = /Developer/SDKs/MacOSX10.4u.sdk 를 MacOSX10.6.sdk 으로 변경
-
SDK_TARGET=10.4 를 SDK_TARGET=10.6 으로
-
MACOSX_SDK = /Developer/SDKs/MacOSX10.4u.sdk 를 MacOSX10.6.sdk 으로
-
#git clone git://git.ffmpeg.org/libswscale/ ffmpeg-mt/libswscale 의 주석 #를 제거합니다.
Movist compile하기
- Movist project 을 Xcode로 엽니다.
- Targets에 있는 Movist의 Info 창을 엽니다.
- Architectures 항목의 Base SDK 란을 Latest Mac OS X 로 변경합니다.
- Linking 항목의 Other Linker Flags 의 MacOSX10.4u.sdk를 MacOSX10.6.sdk로 변경합니다.
- build 해보면 무수한 error message가 나올 겁니다. MMovie_QuickTime.h 의 #import <QTKit/QTKit.h> 가 다른 해더보다 뒤에 올 때 이런 문제가 생깁니다. SDK가 버전업되면서 해더의 dependency에 문제가 생긴 모양입니다. 제일 단순한 해결책은 (정석은 아니지만) Movist.h 파일의 맨 위에 #import <QTKit/QTKit.h> 를 추가하는 것입니다.
- 이제 문제없이 build 됩니다. ppc일 때 제대로 도는지는 모르겠네요.