G++: statisch gelinkte Programme werden riesig

Autor

Sonntag, 14. Dezember 2008 16:55:41

Ich schreibe ein kleines QT-Programm, das sich auch an die Mac- und Windows-User richtet. Da diese in der Regel keine QT-Bibliothek installiert haben und diese für weitere Zwecke meist auch nicht bräuchten, möchte ich statisch gelinkte Binaries anbieten.

Unter Mac OS X und Windows werden die gelinkten Programme (keine Universal Binaries unter OSX) zunächst jeweils knapp über 7MB groß, haben aber nachdem unverwendete Symbole herausgeschnitten wurden eine verbleibende Größe von jeweils ca. einem halben Megabyte. Das ist akzeptabel.

Für die Windows-Version setze ich die aktuelle Version von MinGW ein und baue die Programme dadurch mit den selben Compilern. Das Programm ist hinterher zwar nur ca. 5MB groß, jedoch ist dieses nach einem 'dead code stripping' nicht verkleinerbar. Der strip-Befehl erkennt dort keine überflüssigen Funktionen. Was kann ich tun, um das Programm auf eine vernünftige Größe zu bringen?

QT wurde auf allen Plattformen in der Version 4.3.5 mit den Optionen '-release -static -fast -no-exceptions' und ohne Drittanbieter-Grafik- und SQL-Treiber gebaut.

GoaSkin

0 Antworten


Antworten

Ähnliche Artikel

  • Klebebindung
    In der Fremde versagt der extra auf einen USB-Stick kopierte Terminplaner plötzlich den Dienst, weil ihm irgendeine Bibliothek nicht schmeckt. Die von Statifier und Ermine frisierten Programme laufen dagegen auf jeder beliebigen Distribution.
  • Was sind Bibliotheken?
    Abseits der Computer-Welt kennt die Institution namens Bibliothek jeder – wenn auch viele sie selten betreten. Der Alltag eines jeden PC-Benutzers wäre ohne Bibliotheken jedoch nicht so leicht zu bewältigen.
  • checkinstall
    Wer unter Linux viel aktuelle Software ausprobiert, kennt das Problem: Neueste Programmversionen existieren oft nur als tar-Archiv und lassen sich lediglich unter Klimmzügen wieder deinstallieren. Checkinstall schafft Abhilfe.
  • Opera 5.0 unter Linux
    Traurig aber wahr: Linux-Anwender werden noch ein Weilchen auf die Java-Unterstützung in Opera warten müssen. Trotzdem ist der Browser unter Linux eine Alternative. Wir haben uns das Programm in der endgültigen Version 5.0 angesehen.
  • E-Mail-Programme jenseits des Mainstreams
    Unsere MUA-Testkandidaten waren nur die Spitze des Eisbergs: Unzählige weitere buhlen weitaus weniger beachtet um die Gunst der Anwender. Bleibt die Frage: Was können die (nicht)?

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 4 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

eeepc 1005HA externer sound Ausgang geht nicht
Dieter Drewanz, 18.03.2015 15:00, 0 Antworten
Hallo LC, nach dem Update () funktioniert unter KDE der externe Soundausgang an der Klinkenbuc...
AceCad DigiMemo A 402
Dr. Ulrich Andree, 15.03.2015 17:38, 2 Antworten
Moin zusammen, ich habe mir den elektronischen Notizblock "AceCad DigiMemo A 402" zugelegt und m...
Start-Job behindert Bootvorgang, Suse 13.2, KDE,
Wimpy *, 20.02.2015 10:32, 4 Antworten
Beim Bootvorgang ist ein Timeout von 1 Min 30 Sec. weil eine Partition sdb1 gesucht und nicht gef...
Konfiguration RAID 1 mit 2 SSDs: Performance?
Markus Mertens, 16.02.2015 10:02, 6 Antworten
Hallo! Ich möchte bei einer Workstation (2x Xeon E5-2687Wv3, 256GB RAM) 2 SATA-SSDs (512GB) al...
Treiber für Canon Laserbase MF5650
Sven Bremer, 10.02.2015 09:46, 1 Antworten
Hallo ich weiß mittlerweile das Canon nicht der beste Drucker für ein Linux System ist. Trotzd...

Jetzt auf den Mailinglisten

Re: [EasyLinux-Suse] Meine beiden Anfagen abgeschlossen
Heiko, 27.03.2015 12:12
Am Freitag, 27. März 2015, 10:11:20 schrieb H.-Stefan Neumeyer: Hallo Stefan. > > Netinstall? &g...
Re: [EasyLinux-Suse] Dualboot Windows7 Opensuse Update KB 3033929
Heiko, 27.03.2015 11:25
Am Freitag, 27. März 2015, 00:36:44 schrieb Tobias Buchberger: Hallo Tobias, > > versuch doch mal...
Re: [EasyLinux-Ubuntu] Notebook als Monitor
Wolfgang Völker, 27.03.2015 11:13
Hallo Gerhard, dazu fällt mir momentan nur ssh -X, oder PXE als Lösung ein. Ob das aber wirklich in deiner Ko...
Re: [EasyLinux-Ubuntu] Notebook als Monitor
"H.-Stefan Neumeyer", 27.03.2015 10:42
Am Freitag, 27. März 2015, 08:03:25 schrieb Gerhard Blaschke: Hallo Gerhard > > Um uns den Transpor...
Re: [EasyLinux-Suse] Meine beiden Anfagen abgeschlossen
"H.-Stefan Neumeyer", 27.03.2015 10:11
Am Donnerstag, 26. März 2015, 22:52:13 schrieb Heiko Ißleib: > > Was ich nicht verstehe,wie ihm jema...