Qt-static
Wenn man Qt Anwendungen statisch kompiliert hat man den Vorteil, dass die dynamischen Qt Bibliotheken nicht mehr zum Ausführen der Anwendung benötigt werden. Der wohl möglichst größte Nachteil ist die große Größe der Binärdatei. Deshalb soll noch eine Möglichkeit gezeigt werden, wie man eine Binärdatei komprimiert(upx).
Installation
Qt-static ist im AUR vorhanden und kann gemäß der AUR Anleitung hier im Wiki aus diesem installiert werden.
yaourt -S qt-static
Statisch kompilieren mit qmake-static
Man kann weiterhin mit dem qtcreator seine Anwendungen schreiben, kompilieren und testen. Will man das fertige Projekt statisch machen, einfach in den Projektordner wechseln und anstatt
qmake -project qmake make
das Projekt mit
qmake-static -project qmake-static make
kompilieren. Und schon hat man eine statische Binärdatei.
Statisch kompilieren mit make-static-qt
Mit dem skript make-static-qt lässt sich der oben Beschrieben Weg automatisch bewältigen und man kann zusätzlich seine Anwendung mittels upx komprimieren.
In den Projektordner wechseln:
make-static-qt
Um Fragen zu umgehen und mit upx zu komprimieren:
make-static-qt --appname [Name der Anwendung/Pfad]
Komprimieren mit upx
Komprimierungsstufen von 1 bis 9 und die beste Stufe --best.
Schnellste Komprimierung:
upx -1 [Pfad]
Mittelmäßig:
upx -5 [Pfad]
Gut:
upx -9 [Pfad]
Beste Komprimierung:
upx --best [Pfad]