bastla
mit bastla_Assi
Hallo zusammen
meine C++ Programme kompiliere ich normalerweise mit dem g++-Compiler unter Windows (Standard MinGW). Ich wundere mich schon seit einiger Zeit, dass Programme, die mit g++ kompiliert wurden, im Vergleich zu MSVC ziemlich groß sind.
Ein Beispiel
Ich habe folgendes 08-15 Hello-World-Programm:
Wenn ich das Programm ohne Tuning mit
kompiliere, erhalte ich eine 51,21 Kilobyte große Datei. Diese Datei lässt sich nicht auf Windows Vista ausführen, da die C++-Bibliothek in Form einer DLL fehlt (ich dachte, MinGW linkt vollständig gegeben die Win-API), wenn sie auf Windows 7 kompiliere. Meine erste Frage wäre also, woran liegt das?
Wenn ich nun folgenden Befehl verwende
ist das Endprodukt plötzlich nur noch 8,704 Kilobyte groß. Ich bin nur zufällig über das Flag "-s" gestolpert, ich wollte eigentlich "-S" aufrufen. Zweite Frage also: Was ist genau die Funktion von dem "-s" Flag?
Ich danke schonmal für Antworten und Gruß,
bastla
meine C++ Programme kompiliere ich normalerweise mit dem g++-Compiler unter Windows (Standard MinGW). Ich wundere mich schon seit einiger Zeit, dass Programme, die mit g++ kompiliert wurden, im Vergleich zu MSVC ziemlich groß sind.
Ein Beispiel
Ich habe folgendes 08-15 Hello-World-Programm:
Code:
#include <iostream>
using namespace std;
int main() {
cout << "Hello World!" << endl;
return 0;
}
Wenn ich das Programm ohne Tuning mit
Code:
g++ hello_world.cpp -o hello_world.exe
Wenn ich nun folgenden Befehl verwende
Code:
g++ hello_world.cpp -s -o hello_world.exe
Ich danke schonmal für Antworten und Gruß,
bastla