>> Edit article
이름
제목
패스워드
이 팁을 따라하면 MPlayer 실행시 나오는 메시지와 메뉴들 중 일부를 한글화 할 수 있습니다. 이미 알고 계신 분도 계시겠지만 모르시는 분들을 위해 올립니다. 일단 mplayer 소스를 다운 받은 후 ./configure 할 때 --language=ko 옵션을 붙여 줍니다. 이때 --enable-i18n 옵션은 붙이면 안됩니다. (제가 이것 때문에 한참 삽질했죠.) --language=ko 옵션을 붙이면 help_mp-en.h 대신에 help_mp-ko.h 파일을 포함시키게 됩니다. 그리고나서 make 하면 100% 아래와 같은 메시지가 나오며 종료될 겁니다. mplayer.c: In function `exit_sighandler': mplayer.c:393: parse error before "MSGTR_IntBySignal" mplayer.c: In function `main': mplayer.c:1288: warning: assignment makes pointer from integer without a cast mplayer.c:1289: warning: assignment makes pointer from integer without a cast mplayer.c:1376: warning: passing arg 2 of `guiGetEvent' makes pointer from integer without a cast make: *** [mplayer.o] 오류 1 이제 이문제를 해결해 봅니다. 우선 소스를 푼 디렉토리에서 help_mp-ko.h 와 help_mp-en.h 를 열어서 MSGTR_IntBySignal 이 어떻게 정의되어 있나 봅니다. help_mp-en.h 에는 #define MSGTR_IntBySignal "MPlayer interrupted by signal %d in module: %s " help_mp-ko.h 에는 / FIXME: %d must be before %s !!! // #define MSGTR_IntBySignal "MPlayer가 %s모듈에서 %d신호로 인터럽트되었습니다." 이렇게 되어있습니다. 비교해 보면 %d와 %s 의 순서가 바뀌어 있습니다. %d 에는 정수가 %s에는 문자열이 들어가게 되죠.(아님 말구요...) 그래서 이 둘이 바뀌면 컴파일 할때 오류 메시지를 내고 종료하게 됩니다. (번역하신 분도 그것때문에 이부분을 주석으로 막아 놓으신듯...) 해결하려면 다시 순서를 바꿔주면 됩니다.저는 이렇게 했죠. #define MSGTR_IntBySignal "MPlayer가 %d시그널로 인해 %s모듈에서 인터럽트되었습니다." 말이 좀 어색하긴 하지만... 꼭!!! 맨앞에 주석 표시(//) 지우세요. 이제 make 해보면 잘 될 껍니다. make install 하면 설치 끝. 터미널에 나오는 메시지와 메뉴를 한글로 볼 수 있습니다.--0_o
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved