Compilergeschwidingkeit GCC vs. Visual C++
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Compilergeschwidingkeit GCC vs. Visual C++
Da mein Compiler nun auch wieder unter MacOS läuft (64Bit), habe ich die geänderte Version erstmal wieder Linux (32 Bit) zu fressen gegeben. Nachdem der halbwegs aktuelle GCC (4.3.2 Linux, 4.0 Mac) auch wieder einige Dinge bemängelt hat, bin ich zurück zu Windows.
Spaßeshalber habe ich unter Linux mal die Zeit mit 'time', die ein make rebuild erfordert: 37,xx Sekunden. Früher waren es mal 34 Sekunden, also wieder 3 Sekunden Code hinzugefügt - was immer das zu bedeuten hat. Egal. ^^
Zurück zu Windows 7 (32 Bit) und Visual Studio Express: Projekt neu erstellen. Das erforderte gefühlt dann doch etwas Geduld.... Auf gefühlt gibt man ja nix, also Stoppuhr raus: 1:10.
Wieso braucht der Visual Studio Compiler (ohne Optimierung) doppelt solange wie der GCC!?
Spaßeshalber habe ich unter Linux mal die Zeit mit 'time', die ein make rebuild erfordert: 37,xx Sekunden. Früher waren es mal 34 Sekunden, also wieder 3 Sekunden Code hinzugefügt - was immer das zu bedeuten hat. Egal. ^^
Zurück zu Windows 7 (32 Bit) und Visual Studio Express: Projekt neu erstellen. Das erforderte gefühlt dann doch etwas Geduld.... Auf gefühlt gibt man ja nix, also Stoppuhr raus: 1:10.
Wieso braucht der Visual Studio Compiler (ohne Optimierung) doppelt solange wie der GCC!?
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
- cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Re: Compilergeschwidingkeit GCC vs. Visual C++
Wenn du das ganze als Debug kompilierst, muss der VCC das ganze Debug-bremoborium erstellen, das kostet natürlich Zeit.Wieso braucht der Visual Studio Compiler (ohne Optimierung) doppelt solange wie der GCC!?
VS ist normalerweise auf Debug eingestellt, gcc nicht.
Redundanz macht wiederholen unnötig.
quod erat expectandum
quod erat expectandum
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Compilergeschwidingkeit GCC vs. Visual C++
Da von meinem Compiler noch keine Release-Version zu erwarten ist - das Ding wird seit jeher als Version 0.01 kompiliert, obwohl ich schon seit 2 Jahren überlege, ob ich mich auf 0.02 verbessern soll - kompiliert mein make-Skript ebenfalls grundsätzlich als Debug-Version. ^^cloidnerux hat geschrieben:Wenn du das ganze als Debug kompilierst, muss der VCC das ganze Debug-bremoborium erstellen, das kostet natürlich Zeit.Wieso braucht der Visual Studio Compiler (ohne Optimierung) doppelt solange wie der GCC!?
VS ist normalerweise auf Debug eingestellt, gcc nicht.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Re: Compilergeschwidingkeit GCC vs. Visual C++
hm... ganz ehrlich: wenn du Programme für Mac, Windows und Linux erstellen willst, dann schmeiß VC++ zum Fenster raus... weil unter Linux gehen die Programme der neuen Versionen durch .net auf keinen Fall, noch net mal mit Wine...
Ich benutze grundsätzlich nur GCC (bzw. MinGW unter Windows) und die Geschwingigkeit ist mir relativ egal... ob ich nu ne Sekunde warte oder 2 ist mir wurscht. Zumal ich ein Programm meistens von grund auf selbst schreibe (also immer wieder Code hinzufüge) und so kompiliere ich alles von Anfang an, so spare ich dann hinten raus zeit... zumindest kommt es mir so vor... ^^.
VC++ hab ich nie probiert, weil der relativ unverträglich zum GCC ist... VC++ ist doch ein ganz eigener Dialekt zu C++. Oder bin ich da falsch informiert?
Ich benutze grundsätzlich nur GCC (bzw. MinGW unter Windows) und die Geschwingigkeit ist mir relativ egal... ob ich nu ne Sekunde warte oder 2 ist mir wurscht. Zumal ich ein Programm meistens von grund auf selbst schreibe (also immer wieder Code hinzufüge) und so kompiliere ich alles von Anfang an, so spare ich dann hinten raus zeit... zumindest kommt es mir so vor... ^^.
VC++ hab ich nie probiert, weil der relativ unverträglich zum GCC ist... VC++ ist doch ein ganz eigener Dialekt zu C++. Oder bin ich da falsch informiert?
.globl truth
truth:
mov r0, #42
mov pc, lr
truth:
mov r0, #42
mov pc, lr
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Compilergeschwidingkeit GCC vs. Visual C++
Mein Compiler sind etliche hundert Klassen und kompiliert unter VC++ 2008 Express wie GCC ohne Änderungen.naums hat geschrieben:VC++ hab ich nie probiert, weil der relativ unverträglich zum GCC ist... VC++ ist doch ein ganz eigener Dialekt zu C++. Oder bin ich da falsch informiert?
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
- cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Re: Compilergeschwidingkeit GCC vs. Visual C++
Nein, Visual Studio unterstützt C++, hat also einen C++ Compiler, C++ ist durch die ISO/IEC C++ definiert, also muss ein C++ Compiler diesen Standard unterstützen. Aber, Microsoft hat ein paar Zusätze eingebaut, z.B #prgama. Das ändert aber nichts am Quellcode, sondern Resultiert nur in einige seltsame Fehlermeldungen, wie bereits häufiger erwähnt.VC++ hab ich nie probiert, weil der relativ unverträglich zum GCC ist... VC++ ist doch ein ganz eigener Dialekt zu C++. Oder bin ich da falsch informiert?
Aber Mcirosoft hat für sein .NET-Framework eine C++ Abstraktion geschaffen, damit die, die nicht von C++ loslassen wollen, aber die vorzüge von .NET haben wollen, das auch nutzen können.
Redundanz macht wiederholen unnötig.
quod erat expectandum
quod erat expectandum
Re: Compilergeschwidingkeit GCC vs. Visual C++
Ich achte darauf das meine Programme auf allen halbwegs standardkonformen Compileren funktionieren. Der VC++ hat zwar teilweise komische Dinge die er durchgehen lässt und unterstützt manches nicht, aber der Großteil des C++-Standards wird doch unterstützt. Plattformabhängigkeit heißt für mich auch Compilerunabhängigkeit. Ich möcht niemanden in der Wahl seines Lieblingscompilers einschränken... (Zumindest solange es für mich mit ein halbwegs erträglichen Aufwand realisierbar istnaums hat geschrieben:hm... ganz ehrlich: wenn du Programme für Mac, Windows und Linux erstellen willst, dann schmeiß VC++ zum Fenster raus...

Sag das nicht. Mein Spiel mitsamt der Engine kompiliert unter Vollauslastung meines Quadcores in ca. 30 Sekunden, und das obwohl das ganze noch nicht einmal allzu aufwendig ist.naums hat geschrieben:[...]und die Geschwingigkeit ist mir relativ egal... ob ich nu ne Sekunde warte oder 2 ist mir wurscht.
"Make it idiot-proof and someone will invent an even better idiot." (programmers wisdom)
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Compilergeschwidingkeit GCC vs. Visual C++
Um mal eine Lanze für den VC zu brechen - ich habe meinen Code für den VC geändert und er meckerte diverse Dinge an, die dazu führten, dass ich noch einen Bug gefunden hat. Dies hat der GCC durchgehen lassen (das Programm stürzte aber unter Linux auch nicht ab).Kerli hat geschrieben:Der VC++ hat zwar teilweise komische Dinge die er durchgehen lässt und unterstützt manches nicht, aber der Großteil des C++-Standards wird doch unterstützt.
Was kompilierst Du denn alles dazu?Kerli hat geschrieben:Sag das nicht. Mein Spiel mitsamt der Engine kompiliert unter Vollauslastung meines Quadcores in ca. 30 Sekunden, und das obwohl das ganze noch nicht einmal allzu aufwendig ist.
Und wieso hast Du einen Quad, wenn ich als Informatiker hier immernoch auf einem Single Core hantiere?

Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
- Dirty Oerti
- Beiträge: 2229
- Registriert: Di Jul 08, 2008 5:05 pm
- Wohnort: Thurndorf / Würzburg
Re: Compilergeschwidingkeit GCC vs. Visual C++
Wtf?Kerli hat geschrieben:Sag das nicht. Mein Spiel mitsamt der Engine kompiliert unter Vollauslastung meines Quadcores in ca. 30 Sekunden, und das obwohl das ganze noch nicht einmal allzu aufwendig ist.

Also auf meinem Laptop mit Dual Core hier kompiliert der Linux Kernel (zwar recht minimal, aber eben doch alles drin, was ich brauch) in ca 3-4 Minuten ... das bringt mich zur Frage, wie groß verdammt noch mal dein Spiel mit Engine ist?

Bei Fragen einfach an daniel[ät]proggen[Punkt]org
Ich helfe gerne!
----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.
Ich helfe gerne!

----------
Wenn du ein Licht am Ende des Tunnels siehst, freu dich nicht zu früh! Es könnte ein Zug sein, der auf dich zukommt!
----
It said: "Install Win95 or better ..." So I installed Linux.
Re: Compilergeschwidingkeit GCC vs. Visual C++
Die Engine mit meinen eigenen Bibliotheken (Logengine, XML-Parser) und dann ein Demospiel. Für genaue Größen einfach nach unten schauenXin hat geschrieben: Was kompilierst Du denn alles dazu?

Ich bin eben SoftwareentwicklerXin hat geschrieben:Und wieso hast Du einen Quad, wenn ich als Informatiker hier immernoch auf einem Single Core hantiere?


Ja, es sind zwar nicht gannz 30 Sekunden, aber laut 'time' immerhin 26Dirty Oerti hat geschrieben:Wtf?Bist du dir sicher, dass der Quadcore auch ausgelastet wird (make -j5) ?

Dirty Oerti hat geschrieben:das bringt mich zur Frage, wie groß verdammt noch mal dein Spiel mit Engine ist?
Wenn es wer selber ausprobieren möchte; der gesamte Code ist auch auf Launchpad erhältlich...sloccount hat geschrieben:SLOC Directory SLOC-by-Language (Sorted)
5945 gewoopi cpp=5794,ansic=112,xml=39
1098 xml-sipa cpp=1091,xml=7
933 open-log-generator cpp=611,ansic=322
381 tp-tree cpp=381
Totals grouped by language (dominant language first):
cpp: 7877 (94.26%)
ansic: 434 (5.19%)
xml: 46 (0.55%)
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
"Make it idiot-proof and someone will invent an even better idiot." (programmers wisdom)
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at