커뮤니티 | 큐티/임베디드/큐토피아 | PODO | SDL | 마이크로윈도우 | 리눅스프로그래밍 | 기타 | 포인트순위 | 최근게시물최근게시물 RSS  
korone.net에 다루었으면 하는것은요?
 
 
 
 
 
162
955
3,878
3,871,520
  현재접속자 : 67 (회원 0)






배너 신청 문의

 
작성일 : 14-11-12 13:02
[QT/Embedded] 우분투 Qt5 크로스 컴파일 (14/11/26 2차 수정)
 글쓴이 : 김아무…
조회 : 14,157   추천 : 0  
환경은 아래와 같습니다.
OS: Ubuntu 14.04 LTS (32bit)
Cross compiler: arm-linux-gnueabi


1. tslib 설치

git clone https://github.com/kobolabs/tslib
 * 버그 fix 버전.

cd tslib

chmod 755 autogen-clean.sh
chmod 755 autogen.sh

./autogen-clean.sh
./autogen.sh

./configure --build=i386-linux --host=arm-linux -prefix=/rootech/lib/tslib CC=/usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux-gcc CXX=/usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux-g++ \
--enable-shared --disable-h3600 --disable-corgi --disable-collie --enable-input --disable-arctic2 --disable-ucb1x00 --disable-mk712

make
sudo make install

sudo rm /rootech/lib/tslib/etc/ts.conf
sudo vi /rootech/lib/tslib/etc/ts.conf
{

module_raw input
module pthres pmin=1
module variance delta=30
module dejitter delta=100
module linear

} // 이 부분은 configure 한 설정에 맞게 필요한 모듈의 주석을 지워주시면 됩니다.

cd /rootech/lib/tslib/lib
sudo ln -s libts-1.0.so.0.0.0 libts-0.0.so.0



2. Qt5.3.1 소스 다운로드 후 압축해제
 * 다운은 아래 주소에서 가능
http://download.qt-project.org/archive/qt/5.3/5.3.1/single/

sudo apt-get install libfontconfig1-dev libfreetype6-dev libx11-dev libxext-dev libxfixes-dev libxi-dev libxrender-dev libxcb1-dev libx11-xcb-dev libxcb-glx0-dev

sudo apt-get install libxcb-keysyms1-dev libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-render-util0-dev



3. qmake.conf 파일 수정
cd qt-everywhere-opensource-src-5.3.1
vim ./qtbase/mkspecs/linux-arm-gnueabi-g++/qmake.conf

...

  1. modifications to g++.conf
QMAKE_CC                = /usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux-gcc
QMAKE_CXX               = /usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux-g++
QMAKE_LINK              = /usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux-g++
QMAKE_LINK_SHLIB        = /usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux-g++

  1. modifications to linux.conf
QMAKE_AR                = /usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux-ar cqs
QMAKE_OBJCOPY           = /usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux-objcopy
QMAKE_NM                = /usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux-nm -P
QMAKE_STRIP             = /usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux-strip

QMAKE_LFLAGS += -Wl,-rpath-link=/rootech/lib/tslib/lib

...



4. configure 옵션
cd ~/qt-everywhere-opensource-src-5.3.1/qtbase/

./configure -v \
-arch arm \
-xplatform linux-arm-gnueabi-g++ \
-device-option CROSS_COMPILE=arm-linux-gnueabi \
-prefix /rootech/qt/5.3.1 \
-opensource \
-confirm-license \
-I/rootech/lib/tslib/include -L/rootech/lib/tslib/lib -tslib \
-no-c++11 -no-wayland -force-pkg-config -no-largefile -no-accessibility

make
sudo make install


5. 타겟보드 환경변수 설정

*****************************************************
TSLIB_CONFFILE: ts.conf 의 경로
TSLIB_CALIBFILE: touch calibration파일이 저장 될 경로
QT_QPA_PLATFORM: -platform 옵션
QT_QPA_GENERIC_PLUGINS: -plugin 옵션
*****************************************************
{

export TSDIR=/rootech/lib/tslib
export TSLIB=/rootech/lib/tslib/lib
export TSLIB_ConFFILE=$TSDIR/etc/ts.conf
export TSLIB_CALIBFILE=$TSDIR/etc/pointercal
export TSLIB_PLUGINDIR=$TSDIR/lib/ts
export TSLIB_TSDEVICE=/dev/input/event1
export PATH=$TSDIR/bin:$PATH
export LD_LIBRARY_PATH=$TSLIB:$LD_LIBRARY_PATH

export QWS_DISPLAY=Linuxfb:mmsize=200x120
export QT_QPA_PLATFORM=$QWS_DISPLAY
export QWS_MOUSE_PROTO=Tslib:$TSLIB_TSDEVICE
export QT_QPA_GENERIC_PLUGINS=$QWS_MOUSE_PROTO

export QTDIR=/rootech/qt/5.3.1
export QTLIB=$QTDIR/lib
export QTINC=$QTDIR/include
export PATH=$QTDIR/bin:$PATH
export QMAKESPEC=$QTDIR/mkspecs/linux-arm-gnueabi-g++
export LD_LIBRARY_PATH=$QTLIB:$LD_LIBRARY_PATH

}


6. 참고 자료 link
http://qt-project.org/wiki/Building-Qt-5-from-Git
http://qt-project.org/doc/qt-5/linux-requirements.html
http://gpupowered.org/node/8



devilqoo 14-11-12 19:31
 
다음에 빌드할 일 있을 때 유용하게 참고하도록 하겠습니다. :)
때끼 15-01-21 15:31
 
혹시 이렇게 빌드 하여 타겟에 빌드된 환경을 넣었을때 qt 어플들이 동작을 하는지 문의를 드려봐도 될까요?

root@freescale ~$ ./dials
 Segmentation fault

전 이렇게 qt5 의 예제 어플들이 전부 동작 하지 않아서 댓글을 달아 봅니다.
     
김아무… 16-11-25 11:40
 
동작하는것을 확인하고 쓴 글입니다.
실행하실때 -qws 옵션을 넣어보시기 바랍니다.
성일 15-02-12 16:58
 
./configure -v -arch arm -xplatform llinux-arm-gnueabi-g++ -device-option CROSS_COMPILE=arm-linux-gnueabi -prefix /home/sikim/qt-everywhere-opensource-src-5.4.0 -opensource -confirm-license -no-c++11 -no-wayland -force-pkg-config -no-largefile -no-accessibility
하면 아래와 같은 오류가 발생합니다

The specified system/compiler is not supported:

      /home/sikim/qt-everywhere-opensource-src-5.4.0/qtbase/mkspecs/llinux-arm-gnueabi-g++

틀린부분이 없는것 같은데 원인을 모르겠습니다
덜렁냥 15-02-24 18:58
 
감사합니다. 리눅스 초보라 설정할때 애먹었지만. 환경변수 전까지 잘 했습니다.
와드노… 15-05-18 13:39
 
혹시 qt4 도 같은방법으로 가능한가요
     
날아Lee 15-05-20 11:04
 
qt4는 configure 시 좀 다르게 넣어줘야 합니다. 찾아보시면 아실겁니다.
verytire 15-07-17 14:54
 
타겟보드는 어떤걸 사용하신건가요?

보드명이나 cpu 모델...
     
김아무… 16-11-25 11:40
 
cpu는 i.mx28 를 사용합니다.
 
 

Total 201
번호 제   목 글쓴이 날짜 조회 추천
201 [QT/Win32] MFC에서 Qt 사용하기 팁. (3) devilqoo 09-10 2076 0
200 [QT/X11] QML 모델을 C++ 코드로 구현하는 방법 중 하나 (1) 구름님 12-03 4361 0
199 [QT/X11] QWT for qt android (1) 구름님 03-07 5953 1
198 [QT/Win32] QtSingleApplication 이용하기 (1) starbig 01-18 5833 0
197 [QT/Win32] Qt 에서 Daum Maps Api geo [ 주소->좌표 변환 ] 사… starbig 01-15 6602 0
196 [QT/Win32] Qt에서 윈도우 서비스 이용하기, Qt Windows Servic starbig 01-15 5132 0
195 [QT/Embedded] QTcpSocket사용 시 플러그 뽑힘 증상 체크 방법 요원009 11-13 9445 0
194 [QT/Win32] QML 에서 CustomModule 을 import 하여 사용하기 tmdwn 05-18 5576 0
193 [QT/Embedded] Qt update함수/repaint함수 사용법좀 알려주세여.. (1) 잉농 05-14 5394 0
192 [QT/Embedded] C++ Exception을 활용한 런타임 콜스택 정보 얻기 (1) korone 04-01 5765 0
191 [QT/Embedded] Qt 5.4.1 raspberry Pi 프로그램 개발하기 (5) 구름님 03-31 19169 1
190 [QT/Win32] Qt 다국어 처리 (2) korone 03-17 11208 0
189 [QT/Win32] signal to signal devilqoo 02-13 5094 0
188 [QT/Win32] Qt x64 바이너리 제공 사이트 (1) 인라이… 02-12 5002 1
187 [QT/Embedded] 우분투 Qt5 크로스 컴파일 (14/11/26 2차 수정) (9) 김아무… 11-12 14158 0
186 [QT/Embedded] Qt 5.3.2에서 Mouse Double Click시 이벤트 문제 (2) korone 11-11 5133 0
185 [QT/Embedded] QtWinExtras korone 11-11 5092 0
184 [QT/Win32] Qt 코딩 스타일 (편집 편) (4) devilqoo 10-22 9245 0
183 [QT/Win32] Qt와 C++11 (2) devilqoo 10-12 9708 1
182 [QT/Win32] Qt 에서의 이벤트 처리 (5) devilqoo 10-09 9058 0
181 [QT/Win32] QList와 QVector의 비교. (2) devilqoo 10-02 6554 0
180 [QT/Win32] Qt에서 사용되는 컨테이너들을 정리해 보았습… (4) devilqoo 10-01 7410 0
179 [QT/X11] qmake DEFINES 변수에 공백문자가 포함된 값을 설… (1) 별님 09-25 4795 0
178 [QT/Win32] 데이터 압축 관련 qCompress(), qUncompress() (9) 구름님 09-16 5304 0
177 [QT/Win32] QML 로 One-Source Multi-Platform (iOS, Android) 실행 tmdwn 09-03 6753 0
176 [QT/Win32] QML 로 iOS Application 제작하기 tmdwn 09-02 6757 0
175 [QT/Win32] QML 로 Android Application 제작하기 (4) tmdwn 09-02 7198 2
174 [QT/X11] qt에서 메모리 조작하기. (2) 나무나… 07-25 7346 0
173 [QT/Win32] Q_DECLARE_FLAGS 매크로 (2) 구름님 07-11 5947 2
172 [QT/Win32] Q_PROPERTY 매크로 (6) 구름님 07-09 8125 2
 1  2  3  4  5  6  7  


About korone.net | Copyright 2003 korone.net. All rights reserved.