Exe wird zu groß...



  • es gibt auch bei g++ die möglichkeit dem copilier zu sagen, dass er auf größe optimieren soll. Wenn man die Passende IDE hat, dann kann man sich die ganzen kompilierflags komfortabe ansehen und (de)aktivieren. Der grund für die riesigen exe Dateien sind immer die bibliotheken. Templates und inlinefunktionen können auch stark die die Größe beeinträchtigen, genau wie Makros, aber die hast du ja nicht verwendet.



  • Wusste nicht, das du für Dos programmieren willst.

    Der Compiler hier kann auch 16 Bit, mit den DOS 16 libraries:
    http://www.digitalmars.com/download/freecompiler.html

    Wie gross die exe werden, keine Ahnung.
    🙂



  • ich hab mir mal ein "Hallo Welt"-Programm mit cout geschrieben, und das durch den g++ mit dem compilerflag -Os (auf größe optimieren) laufen lassen, das Ergebnis ist 8338 bytes groß. Also -Os bringt auf jeden Fall etwas, und printf ist da nicht unbedingt besser.



  • @Krux
    häng auch noch mal -s an, das entfernt alle nutzlosen Symbole und Debug-Infos und -fomit-frame-pointer sollte den Code auch noch mal kleiner machen.

    Artchi schrieb:

    Eben! dynamisch bedeutet DLL. Nur das die DLL meistens schon auf dem Windows-System installiert ist. Wenn nicht (in der gewünschten Version, eine ist aber mind. immer drauf), kann man ein offizielles entsprechendes C-Runtime-Archiv von der MS-Website downloaden (einmal für alle nutzenden Programme und gut ist).

    Bringt ihm unter DOS aber immer noch recht wenig 🙄 Und am Ende würde man wohl doch lieber statisch linken, wenn man das Binary weiter geben will.



  • So ich hab nun auch nochmal mit gcc und den Zusatzoptionen probiert. Half alles nichts. 😡
    Ich hab nun in meiner Verzweiflung mir den alten Borland C++ 3.0 mit 9 Disketten 😮 installiert. Das "Hallo Welt" hat nun auch nur 8kb. Aber danke euch allen für die Tipps. 🙂


Anmelden zum Antworten