기본 콘텐츠로 건너뛰기

Qt Framework를 사용하여 라즈베리파이 응용프로그램 개발 #03

라즈베리파이에 Qt5 SDK 빌드 작업

1. 작업디렉토리 구성

- 헤더파일과 라이브러리를 설치할 폴더를 생성한다.
- 생성된 폴더에 라즈베리파이 장치에 미리 설치된 패키지를 rsync 명령을 통해서 복사한다.
- 변경된 경로에 따른 심볼릭링크를 변경해 준다.


sudo mkdir -p /opt/raspberry-pi
sudo chown $USER:$USER /opt/raspberry-pi
cd /opt/raspberry-pi

mkdir sysroot sysroot/usr sysroot/opt
rsync -avz pi@192.168.0.29:/lib sysroot
rsync -avz pi@192.168.0.29:/usr/include sysroot/usr
rsync -avz pi@192.168.0.29:/usr/lib sysroot/usr
rsync -avz pi@192.168.0.29:/opt/vc sysroot/opt

chmod +x sysroot-relativelinks.py
./sysroot-relativelinks.py sysroot

2. 툴체인 내려받기



3. Qt 5.x 소스 내려받기


Qt 소스를 내려받는 방법은 크게 보면 세가지가 있다
  - Qt사이트에서 제공하는 버전별 압축 파일을 내려 받는 방법
  - git을 통해서 통합코드를 내려받는 방법
  - git을 통해서 필요한 모듈별로 받아서 사용하는 방법

세가지의 방법중 하나를 선택하여 작업을 진행하면 된다.

# git을 통한 전체 코드를 내려받는 방법
git clone git://code.qt.io/qt/qt5.git -b 5.8 qt5-src
cd qt5
-src
./init-repository
# 필요한 최소한의 패키지만 내려받아 사용하는 방법
git clone git://code.qt.io/qt/qtbase.git -b 5.8
git clone git://code.qt.io/qt/qtimageformats.git -b 5.8
# 미리 압축된 하나의 압축 파일을 받아서 사용하는 방법

4. Qt 설정 및 빌드


 - 빌드 디렉토리를 생성하여 빌드를 진행 한다.
 - 빌드 방법은 전체코드를 빌드하는 것을 기준으로 한다.

# 빌드 디렉토리를 생성하여 해당 디렉토리로 이동후 빌드 설정을 진행한다.
# 사용하지 않을 패키지는 -skip 옵션을 통하여 빌드를 하지 않도록 설정을 한다.
mkdir build-qt
cd build-qt
../qt5-src/configure \
  -opensource -confirm-license -release \
  -opengl es2 -device linux-rpi3-g++ \
  -device-option CROSS_COMPILE=/opt/raspberry-pi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/arm-linux-gnueabihf- \
  -sysroot /opt/raspberry-pi/sysroot \
  -prefix /usr/local/qt5pi \
  -extprefix /opt/raspberry-pi/qt5pi \
  -hostprefix /opt/raspberry-pi/qt5host \
  -nomake examples -nomake tests -no-use-gold-linker -qt-pcre -qt-xcb  \
  -skip qtscript -skip qttools -skip qtserialbus

make -j4 && make install -j4

5. 빌드 된 Qt 패키지 설치


# 빌드가 완료되면 패키지를 복사한다.
rsync -avz qt5pi pi@192.168.0.29:/usr/local


댓글

이 블로그의 인기 게시물

Qt Framework를 사용하여 라즈베리파이 응용프로그램 개발 #04

How To build QtSDK for Raspberry-Pi On Windows 1. 최우선적으로 각각의 작업을 진행하는 디렉토리를 설정 한다 . Toolchain directory : d:\toolchains\raspberry-pi Qt SDK install directory : d:\qt Qt source directory : d:\qt-src Qt Build directory : d:\build-qt 2. 빌드하기 위한 추가적 패키지 설치 윈도우에서 qt 를 빌드하기 위해서는 python 과 perl 이 필요하다 . 이것은 http://doc.qt.io/qt-5/windows-building.html 이 문서를 보고 해당 패키지를 설치 하도록 한다 . 3. QtSDK 설치 추가적으로 qtsdk 는 기존 빌드된 실행파일을 https://www.qt.io/download-open-source 에서 내려받아 설치를 진행한다 . QtSDK 는 d:\qt 에 설치를 한다 . 4. 라즈베리파이용 툴체인 설치 http://gnutoolchains.com/raspberry/ 에서 라즈베리파이용 툴체인을 내려 받아 설치 한다 . 설치 위치는 자신에 환경에 맞게 설정해준다 . 여기서는 d:\toolchains\raspberry-pi 에 설치를 한다 . 5. Qt source 내려받기 Q t 소스는 이전에 포스팅한 것을 참고 하여 해당 디렉토리에 소스를 내려 받도록 한다 . git-bash 를 실행하여 다음과 같이 명령을 내린다 . cd /d git clone git://code.qt.io/qt/qt5.git -b 5.8 qt-src cd qt-src ./init-repository 6. Qt 빌드하기 Qt 5.8 for Deskto...

Qt Framework를 사용하여 라즈베리파이 응용프로그램 개발 #02

Qt5를 사용하기 위한 라즈베리안 설치 및 설정 1. 라즈베리안 이미지 내려받기 wget http://downloads.raspberrypi.org/raspbian_latest -O raspbian-latest.zip 2. 라즈베리안 이미지 설치 https://etcher.io/ 에서 이미지 버너를 내려받아 사용하면 된다. 윈도우, 리눅스, 맥에서 모두 동작하므로 사용하기 용의 하다. 3. 라즈베리안 부트 옵션 설정 이미지를  sdcard에 설치를 한후 boot파티션에 있는 config.txt 파일을 수정하여 기본설정을 한다. lcd_rotate : 라즈베리파이에서 사용하는 LCD 패널을 회전 시킬 때 사용하며, 0~3 까지 사용가능 하다. 해당 1의 단위는 90도의 각도를 의미한다. gpu_mem : 라즈베리파이에서 사용하는 GPU의 메모리를 설정한다. 1의 단위는 MB를 사용한다. enable_uart : 라즈베리파이의 UART Port를 기본 콘솔로 사용하기 위해서는 해당 기능을 활성화 시켜야 한다. disable_splash : 부팅 초기에 표시되는 4색 컬러를 표시 하지 않도록 한다. 다음과 같이 해당 항목을 추가 하면 된다. # LCD Display config rotate 180 lcd_rotate=2 # GPU Memory gpu_mem=256 # Enable UART enable_uart=1 # Disable Splash disable_splash=1 4. 라즈베리안 설정 변경 라즈베리안에서 Qt를 사용하기 위해서는 기본적으로 X-Windows 시스템을 사용하지 않도록 해야하며, 경우에 따라서는 계정정보 역시 변경을 해야한다. 해당 정보는 raspi-config 명령을 통해서 변경이 가능하다. (raspi-config명령은 sudo명령을 통하여 루트권한으로 실행해야 한다.) 계정 정보 변경 보안을 위해서 추후 계정 정보를 변경해야 한...

Qt Framework를 사용하여 라즈베리파이 응용프로그램 개발 #01

라즈베리파이에 Qt5 SDK 빌드 개요 이문서는 RaspberryPi3에 Qt 5.6 혹은 5.8를 사용하여 응용프로그램을 개발하는 방법을 소개한다. 브로드컴에서 제공하는 EGL/GLES 를 사용하도록 qmake.conf 가 기존에 작성이 되어 있기 떄문에 해당 기능을 활용하여 빌드를 진행한다 . 개발환경은 우분투 혹은 데비안 그리고 맥 OS 에서 구성이 가능하며 , 이문서는 https://wiki.qt.io/RaspberryPi_Beginners_Guide 와 https://wiki.qt.io/RaspberryPi2EGLFS 를 기반으로 하여 작성이 되었다 . 기본 개발환경은 우분투/데비안을 기준으로 사용하고 macOS의 경우 다음에 기회가 된다면 추가적으로 기술하도록 한다. 작업흐름은 다음과 같은 순서로 진행을 한다 . Qt5를 사용하기 위한 라즈베리안 설치 및 설정 을 참조하여 필요한 설정 및 패키지 설치를 진행한다 . 작업 디렉토리를 정의 한다 . 라즈베리파이용 컴파일러를 내려받아 설치한다 . 라즈베리파이용 교차개발 도구를 내려받아 설치한다 . Qt5 소스코드를 내려받는다 . Qt5 필수 패키지 설치 ( 참조한 문서에서는 QtBase, QtImageFormats 패키지만을 우선적으로 빌드하여 사용하고 필요한 패키지가 추가적으로 있을시에 해당 대상만 빌드를 하도록 되어 있다 .) 빌드된 패키지를 포함한 라즈베리파이에 설치 한다 . 테스트 앱을 빌드하여 정상적으로 동작하는지 확인 한다 .