QT/Embedded 샘플 중에 hello를 실행해 봤기 때문에 다른 것을 해보려고 했는데, 또 이상한 문제가 걸리네요. 넘어야할 고개가 참 많군요. 이번에 만난 이상한 현상은 바로 이것입니다.

]# cd $QTEDIR/examples
]# cp -r dclock dclock2
]# cd dclock2
]# qmake -spec $QPEDIR/mkspecs/qws/linux-arm-g++ dclock.pro
]# make
Some of the required modules (large-config) are not available.
Skipped.
]#

흠...이것은 에러는 아니고 large-config에 필요한 모듈을 사용할 수 없어서 작업이 취소되었다는 얘기 같은데 그게 무엇인 줄 알아야 말이죠..

해결 방법 pro 파일 하단에 REQUIRES 항목을 삭제합니다.

즉, 아래와 같이 qmake로 pro 파일을 만듭니다. 원 소스는 나중에 다시 참고해야 하므로 복사해서 사용해 보도록 하겠습니다.

]# vi dclock.pro
TEMPLATE        = app
CONFIG += qt warn_on release
HEADERS = dclock.h
SOURCES = dclock.cpp
main.cpp
TARGET = dclock
DEPENDPATH=../../include
REQUIRES=large-config ---> 바로 요 행을 삭제합니다.
]# make
qmake -spec /qt/qpe-arm/mkspecs/qws/linux-arm-g++ -o Makefile dclock.pro
arm-linux-g++ -c -pipe -DQWS -fno-exceptions -fno-rtti -Wall -W -Os -DQT_NO_QWS_VFB -DQTOPIA_DATA_LINKING -DQCONFIG="qconfig-qpe.h" -DQTOPIA_TARGET="dclock" -DQTOPIA_TRTARGET="dclock" -DQT_NO_DEBUG -I/qt/qpe-arm/mkspecs/qws/linux-arm-g++ -I. -I../../../qpe-arm/include -I../../include -I.ui/release-shared/ -I.moc/release-shared/ -o .obj/release-shared/dclock.o dclock.cpp
arm-linux-g++ -c -pipe -DQWS -fno-exceptions -fno-rtti -Wall -W -Os -DQT_NO_QWS_VFB -DQTOPIA_DATA_LINKING -DQCONFIG="qconfig-qpe.h" -DQTOPIA_TARGET="dclock" -DQTOPIA_TRTARGET="dclock" -DQT_NO_DEBUG -I/qt/qpe-arm/mkspecs/qws/linux-arm-g++ -I. -I../../../qpe-arm/include -I../../include -I.ui/release-shared/ -I.moc/release-shared/ -o .obj/release-shared/main.o main.cpp
/qt/qte-arm/bin/moc dclock.h -o .moc/release-shared/moc_dclock.cpp
arm-linux-g++ -c -pipe -DQWS -fno-exceptions -fno-rtti -Wall -W -Os -DQT_NO_QWS_VFB -DQTOPIA_DATA_LINKING -DQCONFIG="qconfig-qpe.h" -DQTOPIA_TARGET="dclock" -DQTOPIA_TRTARGET="dclock" -DQT_NO_DEBUG -I/qt/qpe-arm/mkspecs/qws/linux-arm-g++ -I. -I../../../qpe-arm/include -I../../include -I.ui/release-shared/ -I.moc/release-shared/ -o .obj/release-shared/moc_dclock.o .moc/release-shared/moc_dclock.cpp
arm-linux-g++ -o dclock .obj/release-shared/dclock.o .obj/release-shared/main.o .obj/release-shared/moc_dclock.o -L/qt/qpe-arm/lib -L/qt/qte-arm/lib -lqte
]# 이제 임베디드 보드에 복사해서 실행해 보겠습니다. qtopia 프로그램을 실행하기 위해서는 qpe 프로그램이 설치되어 있어야 하며, 이 방법은 이미 이전 시간 QTopia 2.1.1 설치기에 자세히 소개되어 있습니다. 이전 강좌를 보시지 않으신 분은 QTopia 2.1.1 설치기를 먼저 보십시오. 이후로는 임베디드 보드에서 진행합니다. 임베디드 보드는 ESP-MMI 보드를 이용했습니다. ]$ mount -t nfs -o nolock 192.168.10.50:/공유폴더 /mnt/nfs -> nfs로 개발 PC와 연결합니다. ]$ cd /app/qpe -> qtopia가 설치된 폴더로 이동 ]$ cp /mnt/nfs/dclock2/dclock . -> 개발 PC로부터 실행파일 복사 ]$ source qpe.env -> qtopia 환경 변수 설정 ]$ ./bin/qpe & -> qtopia 를 실행 ]$ ./dclock -> 프로그램 실행

이렇게 해서 dclock도 실행할 수 있었습니다.

그러나 이 방법이 모든 해결 방법은 아니네요. aclock가 있길레 아날로그 시계를 보고 싶었는데, 또 다른 에러가. ^^;

 

태그: *QT *그래픽