안녕하세요 ?

qtopia 빌드하는 건.. 제가 한 방법은..
문서는 qtopia 소스 내에 들어있는게 가장 그래도 나은 편이구요..

제가 한 방법 간단히 적어볼게요.

qtopia 빌드 전에 준비해야 되는 것들이 있습니다.

libjpeg은 www.ijg.org 에서 소스 받아다가 arm용으로 빌드하시면 됩니다.
참고로 제가 사용한 configuration은
CC=arm-linux-gcc AR=arm-linux-ar ./configure --prefix=[cross tool의 TARGET-PREFIX]
--x-includes=[TARGET-PREFIX]/include --x-libraries=[TARGET-PREFIX]/lib
--host=i686-pc-linux-gnu
--target=arm-linux
--enable-shared
--enable-static
입니다..
(제 경우, TARGET-PREFIX는 usr/local/arm/3.3/arm-linux 거든요... 다들 틀리실테니..)
이렇게 한 다음에 Makefile을 직접 점검하셔서.. 제대로 설정되지 않은 것들
직접 고쳐주시면 됩니다. 기억에 ar과 ranlib가 제대로 안 고쳐져 있어서,
arm-linux-ar, arm-linux-ranlib로 바꿔 줬던것 같습니다..
make ; make-install

libuuid는 e2fsprogs를 ARM용으로 빌드하면 얻을 수 있지 않을까 했는데,
정적 라이브러리만 생기고, 공유 라이브러리는 죽어도 안 만들어지더라구요.
저도 그래서 얻어왔습니다. GCC 3 버젼으로 만들어진 ARM용 libuuid 첨부할게요.
사용하세요.. (sharp zaurus용의 libuuid는 GCC 2버젼에서 만든거라.. 가져다
쓰면 에러납니다.)
libuuid 라이브러리를 [TARGET-PREFIX]/lib에 복사해주시고, uuid 헤더 파일은
[TARGET-PREFIX]/include에 복사해 주시면 됩니다.
uuid 헤더파일은 e2fsprogs ARM용으로 빌드해서 얻은 것을 사용하시면 됩니다.
(빌드 방법은 소스안에 INSTALL인가에 자세하게 나와있더라구요..)

그리고, 중요한게 GCC 3.2.1/GLIBC 2.3.1 조합의 Cross-tool로 Qtopia 빌드
안됩니다. 이유는 저도 잘 모릅니다.
(build 과정 중 server link하는 중에 multiple definition에러 납니다...
황당 답답하져.. 메일 아카이브에서 GCC 3.2.1 문제라고 본 것 같기도 하고.. 하여튼..)
전 GCC 3.3.1/GLIBC 2.3.2 조합 툴 체인 사용합니다..

전 처음에 할 때는 QTe도 문서에 있는 그대로 빌드했습니다.
참고로, 제 configure 옵션은
-xplatform linux-arm-g++
-qconfig qpe -depths 16 -no-qvfb -gif
-system-jpeg
그 담에 make sub-src..
(환경 설정이나 자세한 건, 소스 안에 있는 문서랑 여기에 있는 How To
참조해서 전 많이 도움 받았습니다. .. PATH 잡고 그런 건.. 스크립트
만들어서 사용하는 거 강추입니다.. 전 qtopia_arm, qtopia_x86 ...
이런식으로 스크립트 만들어서 쓰거든요..)

Qtopia 빌드는,
uic 툴을 qt/x11-2.3.2에서 복사해 주시거나, 링크 걸어주신 다음에..
(제 경우는, ln -s ~/ez-x5/host/qtx-2.3.2/bin/uic ~/ez-x5/target/qt-2.3.7/bin/uic )
PATH 잡아주시고, 담에 confiure..
제 configure 옵션은, -platform i686-pc-linux-gnu
-xplatform linux-arm-g++
그리고 나서 make 하면 잘 되실겁니다. 전 40분 걸리던데..

성공 하셨으면,
arm용 Qte디렉토리/bin, /include, /lib 의 내용을 Qtopia의 해당
대렉토리에 복사해 준 다음에..(font도 복사해주세요.) QTDIR path도 QPEDIR이랑 일치하게 잡아
주시면 쓰기 편합니다. zaurus도 이렇게 쓰더라구요.

NFS로 타겟에서 테스트 해보기 위해,
Host의 NFS 디렉토리 밑에 적당한 디렉토리 만들고, (전, qtopia)
ARM용으로 빌드한 apps, bin, etc, i18n, lib, pics, plugins, sounds
디렉토리들을 복사해 주시면 됩니다.
타겟에서 사용할 환경 설정 스크립트도 하나 만들어주시구요..

타겟 루트 파일 시스템의 GLIBC 버젼과 qtopia 빌드시 사용한 버젼이 다르니까
루트 파일 시스템 GLIBC 업그레이드 해주셔야 됩니다.
(여기 How To 문서가 좋은 것 같습니다. 참고로, 전 램디스크 안쓰기 때문에
.. 그냥 타겟에다 업그레이드할 라이브러리 복사해놓고, ln -sf 열심히 치면서
GLBIC 2.3.2대로 바꾸어 줬습니다... )

타겟에서 환경설정도 잡히고 그러셨다면, qpe 하시면, qtopia 화면 나올겁니다.
(GLIBC 업그레이드 안해도 Qtopia 뜨지만, 미디어 플레이어 등은 사용할 수
없습니다...)

휴~~~~ 힘들다.. 성공하시길...

p.s. QTe 빌드할 때, -qconfig qpe 옵션으로 빌드하시면 약 3MB 정도의 라이브러리
가 만들어 지더라구요.. 임베디드 환경에 맞게 많이 뺀거라는데...
그냥 이것 저것 다 되게 하실려면, everything으로 빌드하시는 것도 좋을 것
같습니다.