G
edit: dieser Artikel ist ziemlich veraltet. Eine aktuellere aber (derzeit) noch sehr spartanische Liste findet sich hier.
Hallo,
hier findet ihr eine Liste der besten kostenlosen Compiler/IDE's + einer kleinen Erklärung/Bewertung. Ganz unten sind noch mal alle Links zusammengefasst. Ergänzungen bitte per Mail an mich oder als Hinweis ins Forum.
Übersicht
Windows
Ebenso für absolute Anfänger als auch für leistungsorientierte Programmierer bietet sich die Microsoft Visual C++ 2005 Express-Edition an. Diese IDE (Integrierte Entwicklungsumgebung) lässt sich nicht nur einfach mit ein paar Klicks installieren, sondern sehr guten, standardkonformen und optimierenden Compiler unter der Haube. Die IDE ist zudem recht benutzerfreundlich und sowohl in Englisch als auch in Deutsch erhältlich (wobei ich persönlich nur zu englisch rate). Sie enthält eine sehr umfangreiche Dokumentation (entweder lokal und online).
Nachteile ist der relativ grosse Download (462MB; empfohlen wird die ISO-Datei, da man dann die Installation nicht registrieren muss!) und wenn man "native" Win32-Anwendungen erstellen will, so muss noch zusätzlich das PSDK (Platform SDK) installiert werden (nochmals 409 MB). Es enthält zudem keinen Resource-Editor, aber hier mann man sich mit freien alternativen behelfen. Auch ist keine MFC/ATL enthalten (im gegensatz zur kommerziellen Standard oder Prof. Version, welche dann MFC/ATL und natürlich einen Resource-Editor enthält).
Die perfekte IDE für die ersten "Hello World's", aber natürlich auch eine komfortable Lösung für erfahrene Benutzer.
Unterstützt: Alles was man mit Windows machen kann .
Borland's Turbo C++ Edition erlaubt die Entwicklung von Windows-Anwendungen mit dem Borland Turbo C++ compiler und der passenden IDE. Die IDE und der Compiler enthalten alles was man sich wünscht. Um einen Aktivierungs-Schlüssel zu erhalten, muss man sich registrieren.
Der leistungsorientierte Kommandozeilen- Programmierer nimmt den Borland C++ Compiler 5.5 (BCC55), zu finden unter www.borland.com. Dieser reine Compiler + Linker war früher kommerziell. Daher bietet er (neben dem MS Compiler) die vielleicht beste Performance im Feld, ordentliche Standard-Orientierung und unzählige Compiler-Schalter zum Optimieren. Leider ist er dementsprechend schwierig zu bedienen und zu installieren. Achtung: Es handelt sich hierbei nur um den reinen Kommandozeilen-Compiler. Es gibt aber einige externe IDE's (z.B. V IDE, www.objectcentral.com ). Er wird voraussichtlich nicht weiter entwickelt und auch nicht mehr von Borland unterstützt.
Unterstützt: Konsole/DOS (32Bit), Win32, OpenGL, KEIN DirectX
Der versierte bzw. Profiuser, der den Standard schätzt und auch mal ein wenig hinter die "Kulissen" eines Compilers schauen will sollte sich eine der gcc-Portierungen anschauen.
Das wären MinGW (www.mingw.org), CygWin (www.cygwin.com) oder DJGPP (www.delorie.com/djgpp).
Zumindest der gcc selbst befindet sich in ständiger Weiterentwicklung und ist extrem standard-konform. Zahlreiche fantastische Dokumentationen lassen einen Blick in die Entwicklung zu. Es existieren übrigens Ports für nahezu alle möglichen PC-Plattformen.
Die Compiler selbst (wobei wir uns jetzt mal auf MinGW einschießen) sind dementsprechend vielseitig und durchaus auch für starke Optimierungen geeignet.
Aber Vorsicht: Besonders Cygwin und MinGW werden viele einfach überfordern. Sie sind in ihrer Art einfach zu abstrakt für Unerfahrene. Die werden nämlich schon am Download verzweifeln.
Cygwin enthält noch einige Extra-Header zur Portierung von Linux-Code sowie die Möglichkeit für Fenster-Programmierung. Der DJGPP ist unter Anfängern wie Profis recht beliebt, da er eine breite Masse an Extras (z.B. Dos-Spielereien, Allegro (http://sunsite.dk/allegro/) für Grafik) und Dokumentationen mit sich führt.
Unterstützen: Konsole/DOS (32bit), OpenGL, Fenster
Die Features des Watcom (www.openwatcom.org) lesen sich wie die Wunschliste an den Programmiergott der Freeware. Sogar MFC soll er unterstützen, obwohl ich über diese Fähigkeiten keine Aussagen treffen kann und will. Wie er sich für die tägliche Praxis etabliert, muss wohl jeder selbst herausfinden. Er scheint leicht verbugt zu sein, zudem ist er etwas älter.
Unterstützt: DOS (16Bit), Konsole/DOS (32Bit), Win32, MFC, sicher auch OpenGL und DirectX (ich bin mir aber nicht sicher)
Ebenso vielseitig (MFC-fähig, 'echte' 16Bit-Programmierung) präsentiert sich der Digital Mars (www.digitalmars.com). Die eigentliche Leistung soll sich jedoch angeblich im unterdurchschnittlichen Bereich befinden; die Möglichkeiten zur Optimierung sind begrenzt. Selbst getestet habe ich ihn jedoch nicht, einen Blick, speziell für 16Bit-Interessierte, kann man also schon riskieren.
Unterstützt: DOS (16Bit), Konsole/DOS (32Bit), Win32, MFC, OpenGL, wahrscheinlich kein DirectX
Die alten Borland Turbo C/C++-Compiler sind sicher noch interessant, wenn man mal alten Code in die Finger bekommt oder ein wenig in Nostalgie schwelgen will. Ansonsten sind sie fast unbrauchbar. Und dennoch: Es sind ordentliche 16Bit-Compiler. Zu finden im Museum von www.borland.com bzw. im "BDN" (http://bdn.borland.com).
Nicht mehr weiterentwicklet und auch problematisch ist DEV-C++ ( www.bloodshed.net ). Diese IDE (Integrierte Entwicklungsumgebung) lässt sich zwar einfach mit ein paar Klicks installieren, Nachteile sind aber die getrennte Installation des Compilers und die relativ schwache Dokumentation und (scheinbar?) manchmal auftretende unlösbare Fehler bzw. Bugs. Persönlich würde ich davon abraten.
Tutorial für DEV-C++: http://www.kellas.de/HTML/Dev-C++.html
Unterstützt: Konsole/DOS (32Bit), Win32, OpenGL, mit einigen Kniffen sogar DirectX / neuere DLLs/LIBs werden aber nicht unterstützt (XP/Vista)
Die reinen C-Compiler wie Pacific C (http://www.htsoft.com/products/compilers/PACIFICc.php), Miracle C (http://www.c-compiler.com), lcc32 (http://www.cs.virginia.edu/~lcc-win32/) oder DiceRTE (www.diefer.de) möchte ich nicht unter den Tisch fallen lassen, allerdings denke ich, das es wenige gibt die auf reine C-Compiler großen Wert legen (korrigiert mich, wenn nötig). Sie werden zudem nicht mehr weiterentwickelt. Pacific C ist ob seiner geringen Downloadgröße von ca. 970kb noch geeignet für Disketten oder wenig Festplattenplatz. Im Zweifelsfall greife man lieber zu MinGW oder BCC55.
So, ich hoffe diese Liste konnte euch einen kleinen Einblick geben, welcher Compiler euren Wünschen und Fähigkeiten entspricht. Für weitere spezielle Fragen ist ja das Forum da.
Kurzfassung / Linkliste
Windows
Microsoft Visual C++ 2005 Express-Edition
Hinweise in unserem Forum zu VC2005EE
ISO-Download English
ISO-Download Deutsch
Homepage
Windows Server 2003 R2 Platform SDK ISO Download (409 MB)
PSDK Integration in VC2005EE
Turbo C++
Homepage
Downloads
BCC55
Homepage: www.borland.com (nach Registrierung)
VIDE: www.objectcentral.com
MED (IDE): www.utopia-planitia.de
Editor: www.rz.uni-karlsruhe.de/~uj7b/editor.html
Hilfeseite: www.ghostpage.de
gcc-Ports
gcc: www.gnu.org/software/gcc/gcc.html
MinGW: www.mingw.org
Cygwin: www.cygwin.com
DJGPP: www.delorie.com/djgpp
Cygwin-Tips: www.c-plusplus.net/cygnustips.txt
DJGPP-Tips: http://c.theflow.de/
Allegro (DJGPP): http://sunsite.dk/allegro/
(Open-)Watcom
Homepage: www.openwatcom.org
Digital Mars
Homepage: www.digitalmars.com
Turbo C/C++
Homepage: www.borland.com (nach Registrierung)
BDN: http://bdn.borland.com (nach Registrierung)
DEV-C++
Homepage: www.bloodshed.net
Tutorial: http://www.kellas.de/HTML/Dev-C++.html
Diverse C-Compiler
Pacific C
Miracle C
lcc32
DiceRTE
*nix
gcc: www.gnu.org/software/gcc/gcc.html
Intel C++: http://www.intel.com/software/products/compilers/c60l/noncom.htm
KDevelop: www.kdevelop.org
Anjuta: http://anjuta.sourceforge.net
IDE-Faq: http://www.c-plusplus.net/forum/viewtopic.php?t=39513