Seite 1 von 2
Riesige Binärdatei-Größen seit Qt4.4 ?
Verfasst: 6. August 2008 14:21
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...
Verfasst: 6. August 2008 14:25
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
Verfasst: 6. August 2008 14:32
von pfid
Ein dynamisch gelinktes Binary das 14 MB groß ist?
Verfasst: 7. August 2008 08:36
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
Verfasst: 7. August 2008 09:18
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 ?
Verfasst: 7. August 2008 09:21
von kitov
hast du es als "release" kompiliert ?
Verfasst: 7. August 2008 09:22
von VuuRWerK
Vielleicht als -debug kompiliert? Sodass die ganzen Symbole etc die dabei hinzukommen die Größe verursachen?
Nur eine Vermutung.
Gut Schuß
VuuRWerK

Verfasst: 7. August 2008 09:27
von comer352l
Ist als release kompiliert. Als debug sind die Dateien ja auch nicht sooo viel größer...
Verfasst: 7. August 2008 09:59
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

Verfasst: 16. August 2008 13:37
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) ?
Verfasst: 16. August 2008 15:13
von qt fan
mein letztes prog hat gediegene ~200kB. hab opensuse 11. die debug version davon ist so 3-5mb gross.
Verfasst: 16. August 2008 16:28
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...
Verfasst: 16. August 2008 18:32
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.
Verfasst: 16. August 2008 20:07
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...
Verfasst: 16. August 2008 20:56
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.