Riesige Binärdatei-Größen seit Qt4.4 ?

Alles rund um die Programmierung mit Qt
comer352l
Beiträge: 47
Registriert: 10. Juli 2007 18:10

Riesige Binärdatei-Größen seit Qt4.4 ?

Beitrag von comer352l »

Hallo zusammen,

ich bin mal wieder ratlos:
bis Qt 4.3.4 (4.3.5 hab' ich nicht probiert) war die Binärdatei meiner Applikation unter Linux immer ca. 1.2MB groß. Unter 4.4.0 ist mir dann aufgefallen, dass sie plötzlich 14,3MB groß ist !!!
An der Applikation habe ich keinerlei Änderungen vorgenommen und ich habe auch mal ältere Versionen (mit dem gleichen Ergebnis) neu kompiliert, Also hab' ich mir gedacht, dass es evtl. an den Qt4-packages von openSUSE liegen könnte und habe auf meinem alten Rechner und einem nackten Linux das ganze selbst kompiliert und installiert (NICHT statisch !). Das Ergebnis war jedoch das Gleiche...
Seit gestern hab' ich nun die Version 4.4.1 installiert (hatte auf einen Qt-Bug spekuliert) und siehe da, aus den 14.3MB sind nun 19,9MB geworden !!!

Was zum Teufel könnte da los sein ??? Wenn das so weiter geht sprenge ich vermutlich mit Qt 4.4.5 die 100MB-Grenze :-( ...

Besonders aufgefallen ist mir, dass eine Objekt-Datei um den Faktor 20 von 370KB auf 6,9 bzw. 7,5MB angewachsen ist. Die dazugehörige Klasse macht nichts anderes, als 3 QStringLists zu definieren und diese im Constructor mit Daten zu befüllen. Aber auch die anderen Objekt-Dateien sind ca. um den Faktor 10 gewachsen...
comer352l
Beiträge: 47
Registriert: 10. Juli 2007 18:10

Beitrag von comer352l »

Noch 2 Ergänzungen:
- unter Windows ist die Dateigröße unverändert (ca. 1,6MB, war schon immer etwas größer...)
- im Bug-Tracker von Trolltech findet sich nichts zu diesem Thema (zumindest hab' ich ichts gefunden)

Hat jemand das gleich Phänomen beobachtet ?
Bin wirklich für jede Idee dankbar...

Frank
pfid
Beiträge: 535
Registriert: 22. Februar 2008 16:59

Beitrag von pfid »

Ein dynamisch gelinktes Binary das 14 MB groß ist?
gerome69
Beiträge: 188
Registriert: 28. April 2006 22:50
Wohnort: Berlin
Kontaktdaten:

Beitrag von gerome69 »

comer352l hat geschrieben:Noch 2 Ergänzungen:
- unter Windows ist die Dateigröße unverändert (ca. 1,6MB, war schon immer etwas größer...)
- im Bug-Tracker von Trolltech findet sich nichts zu diesem Thema (zumindest hab' ich ichts gefunden)

Hat jemand das gleich Phänomen beobachtet ?
Bin wirklich für jede Idee dankbar...

Frank
Vielleicht Qt als mit -static kompiliert? Dann sind solche Binary-Grössen sehr realistisch?

Gruß, Gérôme
comer352l
Beiträge: 47
Registriert: 10. Juli 2007 18:10

Beitrag von comer352l »

War auch mein Gedanke, deshalb hab' ich ja auch (wie bereits geschrieben) Qt mal selbst kompiliert (definitiv shared !), jedoch mit dem gleichen Ergebnis.
Inzwischen hat mir der zuständige Packager auch betstätigt, das die openSUSE-Pakete nach wie vor shared kompiliert sind...

Könnte es am Compiler (bzw. den Einstelllungen) liegen ?
kitov
Beiträge: 36
Registriert: 29. November 2006 12:24

Beitrag von kitov »

hast du es als "release" kompiliert ?
VuuRWerK
Beiträge: 82
Registriert: 11. Juni 2007 20:46
Wohnort: Dresden

Beitrag von VuuRWerK »

Vielleicht als -debug kompiliert? Sodass die ganzen Symbole etc die dabei hinzukommen die Größe verursachen?
Nur eine Vermutung.

Gut Schuß
VuuRWerK ;)
Es gibt nur 3 natürliche Feinde des Programmierers: Tageslicht, frische Luft und das unerträgliche Gebrüll der Vögel.
Oft ist die Ursache des schwarzsehens lediglich ein verrutschen des Bretts vorm Kopf =)
comer352l
Beiträge: 47
Registriert: 10. Juli 2007 18:10

Beitrag von comer352l »

Ist als release kompiliert. Als debug sind die Dateien ja auch nicht sooo viel größer...
VuuRWerK
Beiträge: 82
Registriert: 11. Juni 2007 20:46
Wohnort: Dresden

Beitrag von VuuRWerK »

Kommt drauf an was Du machst, hatte schon unterschiede da war das Debug-Resultat ca 300% größer als das release.

Gut Schuß
VuuRWerK ;)
Es gibt nur 3 natürliche Feinde des Programmierers: Tageslicht, frische Luft und das unerträgliche Gebrüll der Vögel.
Oft ist die Ursache des schwarzsehens lediglich ein verrutschen des Bretts vorm Kopf =)
comer352l
Beiträge: 47
Registriert: 10. Juli 2007 18:10

Beitrag von comer352l »

OK, nach zahlreichen Test mit unterschiedlichen Distribution und Qt-Quellen und Versionen kann ich ausschließen, dass an Qt oder meinem Quellcode liegt. Das Problem tritt ausschließlich und reproduzierbar unter openSUSE 11 auf.

Kann irgend ein openSUSE-User das Problem bestätigen (bitte mal nachschauen) ?
qt fan
Beiträge: 53
Registriert: 28. Dezember 2007 21:41

Beitrag von qt fan »

mein letztes prog hat gediegene ~200kB. hab opensuse 11. die debug version davon ist so 3-5mb gross.
comer352l
Beiträge: 47
Registriert: 10. Juli 2007 18:10

Beitrag von comer352l »

qt fan hat geschrieben:mein letztes prog hat gediegene ~200kB. hab opensuse 11. die debug version davon ist so 3-5mb gross.
Wie groß war die Binärdatei unter openSUSE 10.3 ?
Debug kann ich wie gesagt ausschließen, zumindest was mein Prog oder Qt angeht. Und auch sonst hab ich keine Debug-Pakete installiert (das Problem taucht ja auch schon bei einer unveränderten Minimalinstallation von openSUSE 11 auf).
Die nächsten Kandidaten wären dann wohl die g++ bzw. libstd-Pakete...
qt fan
Beiträge: 53
Registriert: 28. Dezember 2007 21:41

Beitrag von qt fan »

ich weiss jetzt nicht warum es an opensuse liegen soll. wenn die dateien so gross werden koennte entweder was statisch gelinkt sein was vlt garnich reinsoll, oder massig debugsymbole blaehen die datei auf oder du hast da ne grosse recource datei eingebettet.
comer352l
Beiträge: 47
Registriert: 10. Juli 2007 18:10

Beitrag von comer352l »

qt fan hat geschrieben:ich weiss jetzt nicht warum es an opensuse liegen soll.
...weil's unter openSUSE 10.3, Debian Etch, Kubuntu 8.04 und Fedora 9 keine Probleme gibt, egal ob Qt 4.3 oder 4.4 und egal ob distro-package oder selbst kompiliert.
qt fan hat geschrieben:wenn die dateien so gross werden koennte entweder was statisch gelinkt sein was vlt garnich reinsoll, oder massig debugsymbole blaehen die datei auf oder du hast da ne grosse recource datei eingebettet.
Schon klar, aber weder das Eine noch das Andere ist der Fall.

Also liegt's wohl am Compiler oder der Standard-Lib, d.h. entweder ein Bug (v4.3.1) oder die openSUSE-packages sind faul. Da traue ich mich aber nicht so ohne weiteres ran von wegen selsbt kompilieren und Umgebungsvariablen einrichten. Und bevor ich den Packager verrückt mache, hätte ich halt gerne mal gehört, ob nicht jemand ähnliche Probleme bemerkt hat...
qt fan
Beiträge: 53
Registriert: 28. Dezember 2007 21:41

Beitrag von qt fan »

also ich hab qt dirket von trolltech.com und eclipse von der eclipse seite heruntergeladen, kdevelop funktioniert auch sehr gut aber das sagt mir leider nich so zu.
und den gcc und make mit dem zypper gezogen, da gibt es eigl keine probleme. hab os 11 x86_64.
Antworten