임베디드 Qt란 무엇인가요?
Qt는 크로스 플랫폼 애플리케이션 및 UI 개발 프레임워크입니다. Qt를 사용하면 애플리케이션을 한 번만 개발하면 소스 코드를 다시 작성하지 않고도 다양한 데스크톱 및 임베디드 운영 체제에 배포할 수 있습니다. Qt는 원래 Nokia에 인수된 Trolltech(www.trolltech.com)에서 개발 및 유지 관리했으며, Qt는 매우 빠르게 발전했으며 버전도 지속적으로 업데이트되었습니다. 현재 최신 Qt 메인 버전은 4.8.1이며, 지원되는 플랫폼은 아래 그림과 같습니다.
임베디드 리눅스 배포판의 Qt는 Qt의 EmbeddedLinux 브랜치 플랫폼에 속합니다. 이 분기 플랫폼을 일반적으로 Qt/E라고 합니다. Qt/E는 원본 Qt를 기반으로 임베디드 환경에 맞게 많은 뛰어난 조정을 수행했습니다. Qt/X11과 비교할 때 Qt/E는 Xserver 또는 Xlib 라이브러리가 필요하지 않으며 기본 그래픽 인터페이스로 프레임 버퍼를 사용하므로 메모리를 매우 절약합니다. Qt/E 애플리케이션은 커널 프레임 버퍼에 직접 쓸 수 있으므로 임베디드 Linux 시스템에서 널리 사용됩니다.
Qt/E는 많은 하드웨어 플랫폼에 직면합니다. 개발자가 특정 하드웨어 플랫폼에 Qt/E를 이식해야 하는 경우 Qt 소스 코드를 다운로드하고 크로스 컴파일러를 사용하여 Qt 라이브러리를 컴파일해야 합니다. 그런 다음 Qt 라이브러리를 두 개의 복사본으로 복사해야 합니다. 하나는 컴파일을 위한 개발 호스트에 있고 다른 하나는 런타임 시 동적 로딩을 위한 대상 보드에 있습니다. 프로세스는 아래 그림에 나와 있습니다.
EasyARM-iMX283은 크로스 컴파일된 Qt 라이브러리(Qt-4.8.0)를 제공합니다. 사용자는 Qt 라이브러리 파일을 컴파일할 필요가 없습니다. 크로스 컴파일러. 사용자는 이 라이브러리의 복사본 두 개를 받게 되며, 하나는 컴파일 중에 연결하기 위해 크로스 컴파일 도구 체인에 포함됩니다. 사본은 대상 보드 파일 시스템에 내장되어 있으며 Qt 프로그램이 실행 중일 때 동적 로딩을 위해 시스템 라이브러리 디렉토리에 배치됩니다.