2013-05-24 4 views
3

Windows에서 MinGW와 함께 미리 빌드 된 Qt 5.0.2를 사용하고 있으며 프로젝트에 대한 설치 프로그램을 구성하고 있습니다. ICU 라이브러리 (icudt49.dll, icuin49.dllicuuc49.dll)에 의존하는 컴파일 된 바이너리가 현지화 또는 유니 코드를 사용하지 않더라도 나타났습니다.ICU 의존성이없는 Qt 프로젝트 배포

Qt가 프로젝트에서 ICU를 사용하는 것을 막을 수있는 간단한 방법이 있습니까, 아니면 소스에서 Qt를 다시 컴파일해야합니까?

답변

8

ICU 지원없이 (따라서 웹킷없이) Qt를 다시 컴파일해야합니다.

+0

추가 된 질문 : Qt 소스가 있습니다. ICU 지원없이 컴파일되도록하려면 어떻게해야합니까? –

+1

@aaronncfca : 구성하려면 "-no-icu"를 전달하십시오. –

0

Qt를 컴파일하는 경우 라이센스 조항을 알고 있어야합니다. 기본적으로 정적 구성의 의미는 다음과 같습니다.

앱용 Qt 라이센스를 구입하지 않으면 앱 코드가 오픈 소스 (GPU 라이센스) 여야합니다.

정적 구성이란 앱을 컴파일 할 때 모든 종속성이 실행 파일에 포함된다는 것을 의미합니다.

Qt의 opensource 소스 코드로 Qt의 정적이 아닌 빌드를 할 수 있다고 생각하지 않습니다.

내가 틀렸다면 누군가 나를 교정 해주세요.

+1

Firtsly, GPL (Gnu 일반 공중 사용 허가서)이며 둘째, Qt는 다른 조건을 가진 LGPL (Lesser General Public License)을 사용하여 배포됩니다. LGPL은 귀하가 라이브러리를 동적으로 링크하는 경우 (예 : .lib 파일 대신 DLL 사용) 상용 및 폐쇄 소스 소프트웨어에 대해 라이센스가 부여 된 소프트웨어 (예 : Qt)를 사용할 수 있다고 명시합니다. –

+0

http://stackoverflow.com/ a/10179181/713961을 참조하십시오. –

4

미리 컴파일 된 라이브러리를 Qt Minimal Deployment Kit for Windows에서 다시 컴파일하거나 사용하십시오. 거기에는 v5.1.1 및 v5.2.2 용 ICU가 아닌 빌드가 있습니다.