기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.
po파일을 읽기 위해 gettext를 사용중입니다.
gettext는 크로스컴파일 했습니다.
-------------------------------------------------------------------------
setlocale(LC_ALL,"ko_KR");
bindtextdomain("LangKorean", "/usr/local/share/locale");
textdomain("LangKorean");
printf("gettext trans : %s", gettext("Authentication"));
이런 식으로 사용중입니다.
/usr/local/share/locale/ko/LC_MESSAGES 에는
gettext-tools.mo
gettext-runtime.mo
LangKorean.mo
가 들어있고 모두 big-endian으로 변경된 것입니다.
(msgfmt자체를 ppc용으로 컴파일해서 mo를 만들었습니다~!)
-------------------------------------------------------------------------
타겟에는 locale에 관련한 것이 없어 호스트의 locale에 관련된 것들을 가져 왔습니다.
필요할 것 같은 라이브러리만 몇개 가져왔다가 번역이 안되서 폴더 통째로 다 복사했습니다.
(/usr/local/bin, lib, include, share, libexec, share...등등.. 동일한 경로를 적용했습니다.)
그래도 여전히 번역이 되지 않아 에러메시지를 찍어보니
Error : No such file or directory
return : (NULL)
이 뜹니다..
(물론 호스트에서는 잘 되고, 크로스컴파일 후 타겟에서 실행할때만 안됩니다..)
어딘가에 ko_KR을 링크해주는 것이 있을 것 같은데 모르겠어서요..
그냥 /etc/ld.so.conf에 /usr/share.. 이런 경로들을 몇개 추가 했습니다.
뭔가 경로를 지정하는 파일이 있어서 수정해야 한다거나..
다른 작업들이 뭐가 필요할까요..ㅜㅜ
도움 부탁드리겠습니다..!
아래와 같은 형식으로 어떤 파일들이 open 되는지 추적해 보시기 바랍니다.
strace -e trace=open ./실행파일
타겟에서 실행해야 하므로 strace는 ppc용으로 컴파일된 것이 필요하겠죠?