G++: statisch gelinkte Programme werden riesig

GoaSkin - Sonntag, 14. Dezember 2008 16:55:41 - 0 Antworten

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.


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.
  • 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)?
  • 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.

Aktuelle Fragen

zweites Bildschirm auf gleichem PC einrichten
H A, 30.09.2016 19:16, 0 Antworten
Hallo, ich habe Probleme mein zweites Bildschirm einzurichten.(Auf Debian Jessie mit Gnome) Ich...
Probleme mit MPC/MPD
Matthias Göhlen, 27.09.2016 13:39, 2 Antworten
Habe gerade mein erstes Raspi Projekt angefangen, typisches Einsteigerding: Vom Raspi 3B zum Radi...
Soundkarte wird erkannt, aber kein Ton
H A, 25.09.2016 01:37, 6 Antworten
Hallo, Ich weiß, dass es zu diesem Thema sehr oft Fragen gestellt wurden. Aber da ich ein Linu...
Scannen nur schwarz-weiß möglich
Werner Hahn, 20.09.2016 13:21, 2 Antworten
Canon Pixma MG5450S, Dell Latitude E6510, Betriebssyteme Ubuntu 16.04 und Windows 7. Der Canon-D...
Meteorit NB-7 startet nicht
Thomas Helbig, 13.09.2016 02:03, 4 Antworten
Verehrte Community Ich habe vor Kurzem einen Netbook-Oldie geschenkt bekommen. Beim Start ersch...

Jetzt auf den Mailinglisten

Re: [EasyLinux-Ubuntu] Bildbetrachtungsprogramm (KDE) mir Druckfunktion
alfred, 30.09.2016 22:00
Am 29.09.2016 um 09:08 schrieb Joachim Puttkammer: Hallo Zusammen, Viewnior 1.6 ist ein sehr einfacher Bild...
Re: [EasyLinux-Ubuntu] DVD abspielen
Frank von Thun, 30.09.2016 18:51
Am 30.09.2016 um 18:48 schrieb Frank: > > Hallo Liste, > kann ich mit Ubuntu eine DVD abspielen,...
[EasyLinux-Ubuntu] DVD abspielen
Frank, 30.09.2016 18:48
Hallo Liste, kann ich mit Ubuntu eine DVD abspielen, wenn ja bitte mit welchen PGM -- Schöne Grüße Cool...
Re: [EasyLinux-Suse] DVB-T_USB_Stick_für__openSUSE_LEAP_42.1
Jan-Uwe, 30.09.2016 16:41
On Wed, 28 Sep 2016 21:37:08 +0200 wmey wrote: > ° www.digittrade.de/shop/shop_content.php/coID/9 >...
Re: [EasyLinux-Suse] DVB-T_USB_Stick_für__openSUSE_LEAP_42.1
Jan-Uwe, 30.09.2016 10:31
On Wed, 28 Sep 2016 21:37:08 +0200 wmey wrote: > Ich suche bitte(!) für > open SUSE LEAP 42.1 >...