Easy release of a very simple Qt program

In order for others to run a simple Qt4 program, you had to download a 12 MB DLL. I recently upgraded to Qt5, and I am shocked to see that it has grown to more than 41 MB.

This means that to release a simple graphics program, even just "Hello World", and still remain under the LGPL, it will be more than 40 MB.

This is very inconvenient if I would like to make a simple but useful tool (freely) distributed on the Internet, since it cannot compete with other similar programs written using much more complicated development tools, such as MS MFC or even winapi, which manages to be less than 100 kB.

Is there any way to make an easy, minimalistic release of a simple Qt GUI application?

+4
source share
2 answers

You do not go too far when you are not compiling your Qt yourself. For a simple Qt GUI application, you need at least Qt5Core and Qt5Gui dll. They are not so big, but the available binaries are dependent on the ICU. This library is a bit big. If you do not need QWebKit, you can disable ICU. There are probably some other things you can turn off when you don't need it, but ICD is by far the biggest addiction.

And don't worry about LGPL. You do not modify your libraries. You just do not deliver the whole package. This is not what the LGPL requires. So it's great, just deliver Qt5Core and Qt5Gui. Even when you yourself have configured and compiled your Qt5. You have not changed the lib code.

+2
source

You can establish a static connection and remain compatible with LGPL. Thus, you need to provide access to the object files that you linked to Qt. So someone else can take their own, possibly modified Qt, and statically link it to your objects. This is a nominal way to handle this.

For a valid example of how to execute, see the QM Modeling Tool Compliance Pack .

+3
source

Source: https://habr.com/ru/post/1499618/


All Articles