4

I'm using the prebuilt Qt 5.0.2 with MinGW on Windows, and am putting together an installer for my project. I've noticed my compiled binary depends on the ICU libraries (icudt49.dll, icuin49.dll, and icuuc49.dll) even though I'm not using any localization or Unicode.

Is there any simple way to stop Qt from using ICU for a project, or would I have to recompile Qt from source?

Matt Kline
  • 10,149
  • 7
  • 50
  • 87

3 Answers3

8

There is no way, you'll need to recompile Qt without ICU support (and thus without webkit).

Frank Osterfeld
  • 24,815
  • 5
  • 58
  • 70
4

Recompile or use pre-compiled libs from Qt Minimal Deployment Kit for Windows. You find non-ICU builds for v5.1.1 and v5.2.2 there.

Jens A. Koch
  • 39,862
  • 13
  • 113
  • 141
0

If you compile Qt, be aware of the licensing terms. Basically, a static configuration means:

If you don't buy a Qt license for your app, your app's code must be open source (GPU license).

A static configuration means all of the dependencies are wrapped into the executable when you compile your app.

I don't think you can do a non-static build of Qt with the opensource source code of Qt.

Somebody correct me if I'm wrong.

te7
  • 601
  • 1
  • 6
  • 23
  • 3
    Firtsly, it's the GPL (Gnu General Public License), and secondly, Qt is distributed using the LGPL (Lesser General Public License), which has different terms. The LGPL states that you can use software licensed under it (such as Qt) for commercial and closed-source software provided that you link the libraries dynamically (e.g. use DLLs instead of .lib files) – Matt Kline May 28 '13 at 13:17