Qt 라이브러리 크로스 컴파일 방법 (4.8 version)

Qt 4.8을 임베디드 리눅스(2.6.32.9)에서 사용하기 위해 필요한 크로스 컴파일 방법을 정리합니다.

 

 

 

가장 먼저 config-blue.sh 스크립트를 수정해야 합니다.

 

여기서 아키텍처, 대상 플랫폼, 라이브러리에 포함할 기능, 외부 lib 사용 여부, output 경로 등을 지정할 수 있습니다. Windows OS를 돌릴 수 있을 정도로 리소스가 풍부한 시스템이라면 모든 feature를 활성화해도 되지만, 임베디드처럼 제한적인 환경이라면 꼭 필요한 것만 활성화해야 합니다.

 

 

 

 

모든 항목이 기록되어 있지만, 메이저 한 항목들은 [여기]에서 확인할 수 있습니다.

쉽게 '-no'는 비활성화, '-qt'는 해당 항목을 포함시켜 컴파일하겠다는 의미로 이해하시면 됩니다.

 

 

 

 

'-prefix'는 크로스 컴파일 결과물이 저장될 위치입니다. qtcreator 환경 변수 잡을 때 필요(qmake) 하니 기억해두세요. 저는 버전별로 관리하기 위해 한 곳에 몰아 저장해놓고 있습니다.

 

 

 

 

마지막으로 config-blue.sh에서는 활성화, 비활성화가 불가능한 qt core lib 피쳐 관련 내용을 공유합니다. Qt 4.8에서 지원하는 기능임에도 사용할 수 없는 기능이 있다면 대부분 core lib에서 NO_DEFINE 처리가 되어 있을 확률이 매우 높습니다.

 

src/corelib/global/qconfig-blue.h

 

위 헤더 파일에서 QT_NO_ 이 부분을 풀어주시면 됩니다. 

 

 

 

make clean && ./config-blue.sh && make && make install

 

이제 위 명령어로 Qt 라이브러리를 빌드하시면 됩니다.

그럼 -prefix로 지정해놓은 path에서 컴파일 된 Qt 라이브러리를 확인하실 수 있습니다.

 


 

 

댓글

Designed by JB FACTORY