제 16 장 qt/embedded
DESCRIPTION
제 16 장 QT/Embedded. 목 차. QT/Embedded 개요 QT/Embedded 설치 QT/Embedded 어플리케이션 실행. QT/Embedded 의 개요. 개요 Trolltech 사에서 개발 기본적으로 요구되는 메모리 사양은 1Mbytes ~ 5Mbytes 지원 되는 플랫폼 : i386, ARM, MIPS, PowerPC, MC68000 Framebuffer 를 지원하여 X11 이 없어도 된다. QT/Embedded 설치. - PowerPoint PPT PresentationTRANSCRIPT
제 16 장 QT/Embedded
2
목 차
QT/Embedded 개요 QT/Embedded 설치 QT/Embedded 어플리케이션 실행
3
QT/Embedded 의 개요 개요
Trolltech 사에서 개발 기본적으로 요구되는 메모리 사양은 1Mbytes ~ 5Mbytes 지원
되는 플랫폼 :
i386, ARM, MIPS, PowerPC, MC68000 Framebuffer 를 지원하여 X11 이 없어도 된다 .
4
QT/Embedded 설치 QT/Embedded 설치 및 환경설정 - 다운로드 ftp://ftp.trolltech.com/qt/source
- 압축을 푼다 . $ tar xvfz qt-embedded-3.3.3.tar.bz2
5
QT/Embedded 설치 환경설정
host QTDIR : Qt 가 설치되어 있는 디렉토리 LD_LIBRARY_PATH : Qt 에서 사용하는 공유 라이브러리가
있는 디렉토리 ~/.bash_profile 에 추가 후 , 적용
$ source ~/.bash_profile 실행
PATH=$PATH:$HOME/bin
export QTDIR=/root/qt/qte-3.3.3export PATH=$QTDIR/bin:$PATHexport LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$QTDIR/lib
6
QT/Embedded 설치 터치스크린 인식시키기
터치스크린 디바이스 노드 /dev/ts 를 불러오도록 수정
/qte-3.3.3]# vi /src/embedded/qmouselinuxtp_qws.cpp
7
Configuration Makefile 편집 :
all:symlinks src-qmake src-moc sub-src 만 남기고 tools, exampes
등을 제거한다 .
QT/Embedded 설치
8
QT/Embedded 설치
Qt/Embedded Configuration $ ./configure –embedded ipaq –shared –depths 16 –
thread -no-cups –qt-mouth-linuxtp
configure 옵션
- shared : 공유라이브러리를 생성하고 사용할 때 - static : 정적라이브러리를 생성하고 사용할 때 - release : 배포시 - debug : 디버깅 정보 추가시
Configure 실행
- 라이센스에 동의 ? yes
9
QT/Embedded 설치
환경설정이 끝나면 Embedded ipaq 용으로 설정했으니 맨 윗줄의 build type에서 다음과 같이 나온다 .
Build on : qws/linux-x86-g++ Build for : qws/linux-ipaq-q++
10
QT/Embedded 설치
컴파일 라이브러리 설치 - 다운로드 파일 :qt_libstdc++-3libc6.1.2.2.10.0.so - 다운받은 파일을 심볼릭 링크
11
QT/Embedded 설치
UIB, QVFB 설치 웹사이트 :http://www.hybus.ent / 자료실 / 최신자료 / 에 있는 QT 소스를 /root/qt 에 다운 받는다 .
파일의 실행 권한을 확인하고 실행권한 주기
/bin]# cp /root/qt/uic .//bin]# cp /root/qt/qvfb .//bin]# chmod u+x uic //실행 권한 주기/bin]# chmod u+x qvfb //실행 권한 주기
12
QT/Embedded 설치
컴파일 실행 $ make 컴파일이 끝났으면 Qt/Embedded 라이브러리를 확인 $ cd $QTDIR/lib /lib] $ll /lib] $file libqte-mt.so.3.3.3
아래 4 개 파일이 나오는지 확인
13
QT/Embedded 어플리케이션 실행
QT/Embedded 어플리케이션 컴파일
이제 응용 프로그램을 컴파일해서 실행시켜보자 . 우선 qte-3.3.3 디렉토리 내에 /root/qt-3.3.3/examples/hello/ 에 가서 hello 프로그램을 컴파일하여 타깃보드에
올린다 .
# make // 컴파일 # file hello //file 명령으로 ARM 용으로 컴파일된 실행 파일을 확인한다 . 'libqte-mt.so.3.3.3: ELF 32-bit LSB shared object, ARM, version 1 (ARM), not
14
QT/Embedded 어플리케이션 실행
nfs 셋팅 컴파일한 qt-3.3.3 디렉토리와 /qt_libstdc++-3-libc6.1-2-10.0.so
를 타겟보드에서 마운트할 nfs 디렉토리로 복사한다 . 이제 타겟보드에서마운트한다 .
타겟보드의 QT/Embedded 환경 설정 export QTDIR=/mnt/nfs/qte-3.3.3 export LD_LIBRARY_PATH=/mnt/nfs/qte-3.3.3/lib:$LD_LIBRARY_PATH
export QWS_MOUSE_PROTO=linuxtp:/dev/ts
위의 3 개의 파일을 export 실켜준다 .
15
QT/Embedded 어플리케이션 실행
ARM 라이브러리 설치
마운트 되어있는 /mnt/nfs/ qt_libstdc++-3-libc6.1-2-10.0.so 를 심볼릭 링크한다 .
16
QT/Embedded 어플리케이션 실행
예제 프로그램 실행
X-server 관련된 데몬을 전부 정지 시킨다 .
# kill -9 {x-server daemon}
이미 마운트 되어 있는 디렉토리로 이동하여 예제 프로그램을 실행한다 . /root]$ cd /mnt/nfs/qte-3.3.3/examples/hello /hello]$ ./hello -qws
프로그램을 실행시키면 프레임버퍼 디바이스를 통해 LCD 로 "Hello World" 라고 출력
되면 성공이다 .