[wxWidgets]Fertig compilierte Exe-Datei riesengross.



  • ok, aber auf windows nicht!! :p



  • wxWidgets wrappet direkt die Win32 API. Müsste eigentlich alles klein sein. 😉



  • Hat sich da mittlerweile eigentlich was getan? Ich habe auch nur ne kleine Anwendung mit ein paar TextCtrls und Fileoperations und die ist trotz strip und optimize size option gleich mal 2,7 MiB groß. (Statisch gelinkt, weils ja auch ohne die wxWidgets DLLs auf anderen Rechnern laufen soll)


  • Mod

    Ja, bei statisch kann das schon passieren. Du solltest allerdings auch im Release Modus bauen (auch wxWidgets).
    Und natürlich nicht als monolithic.



  • Release hab ich. Aber mein wxWidgets Build ist leider Monolithic. Da komm ich um nen neuen Build nicht drum rum, oder?

    Monolitisch heisst ja eigentlich aus einem Guss, aber was ist dann an der nicht monolischen Version anders?



  • Monolithic oder nicht sollte für die EXE egal sein. Jeder halbwegs vernünftige Linker wird eh nur die Funktionen zur Exe linken, die auch benötigt werden. Aus welcher Lib die kommen ist dabei egal.

    Das Problem bei wx schein mir zu sein, das wegen der Serialisierungs-Funktionen ein Haufen Quatschkram mitgelinkgt wird, obwohl man den eigentlich so gut wie nie braucht. WX muss auch darum einen Haufen überflüssigen Mist mit linken, weil es zur Compile-Zeit ja noch gar nicht weiss, welche Sachen zur Laufzeit dynamisch per XML-Ressource erzeugt werden. So landet halt ein Haufen unnötiger Müll in der Exe.

    Das einzige was du machen kannst ist über die Einstellungen alles was du nicht benutzt zu deaktivieren (in der setup.h).


  • Mod

    Die nicht monolithische Version besteht aus den verschiedenen Libraries.

    Nutzt du XRC? Weil XRC sehrviele Abhängigkeiten zu den anderen wxLibs mitbringt imho.



  • Nein, ich nutze kein XRC. Das mit dem MONOLITHIC=0 muss ich bei Gelegenheit mal ausprobieren, wenn ich mal wieder einen neuen Build erstelle.


  • Mod

    Na dann ist ja die Ursache gefunden.

    XRC ist übrigens durchaus einen Blick wert.



  • Hab jetzt mal nen Build mit MONOLITHIC=0 erzeugt und das Projekt nicht mon. kompiliert. An der Dateigröße hat sich aber nix geändert. Naja, was solls, muss mich wohl damit abfinden. Komprimieren lassen sich die Exen wenigstens ganz gut: 2,8 MB Original -> ZIP 1,1 MB, RAR 870 KB.


Anmelden zum Antworten