Entwicklungsumgebung — Änderungen 5035 → 5049

Zeile 10: Zeile 10:
  
 
== Unter Windows ==
 
== Unter Windows ==
−
Unser Ziel in diesem Abschnitt ist es, eine Entwicklungsumgebung unter Windows (vorzugsweise XP, da ich auch kein Freund des UserControl von Vista bin) zu schaffen, in der wir unser OS entwickeln können. Abgesehen davon was wir an Tools (Editor, Assembler, Compiler, Linker und Co) benötigen, gibt es auch verschiedene Vorgehensweisen, besser gesagt verschiedene Entwicklungsumgebungen unter Windows.
+
Auch Windows bietet eine Fülle an Entwicklungsumgebungen, mit denen sich hervorragend entwickeln lässt
  
−
Wofür wir diese Entwicklungsumgebung brauchen, sollte wohl dieses Wiki schon klar gestellt haben, nämlich die Entwicklung eines Betriebssystem. Um gleich zu Anfang nicht zu kleckern, schaffen wir uns eine Umgebung, mit der wir das gesamte OS von der ersten zeile Code bis zu einem fertigen CD-Image erstellen können.
+
Eine Auswahl:
−
 
 
−
Aber welche Umgebungen kann man sich nun unter Windows aufbauen?
 
−
* Singularity-Modell
 
−
* .NET-Framework-Modell
 
 
* Microsoft Visual Studio (IDE)
 
* Microsoft Visual Studio (IDE)
 
* [http://de.wikipedia.org/wiki/Eclipse_(IDE) Eclipse (IDE)]
 
* [http://de.wikipedia.org/wiki/Eclipse_(IDE) Eclipse (IDE)]
−
* Sonstige, eine auf GCC-Basis
+
* Code::Blocks
 +
* DevCpp
 +
 
 +
Da das Hauptklientiel von Windows nicht der Programmierer, sondern der "Otto-Normal-User" ist, bietet Windows dementsprechend keine bzw. nur wenige Entwicklungstools von sich aus mit. Dem neuen OS-Developer stehen am Anfang nichts weiter als der gute alte Notepad zur Verfügung. Zum Glück sieht die Situation heute besser aus als vor Jahren: Viele wichtige Tools wurden portiert oder für Windows neu entwickelt:
 +
 
 +
* [http://delorie.com DJGPP] (Windows-Port von gcc)
 +
* MinGw
 +
* Cygwin
  
−
Nun gut, schauen wir mal was Windows da zu bieten hat. OK, die Reaktion war vorherzusehen, mir ging es nicht anders. Windows hinkt leider hinterher, was Entwicklungstools-OnBoard betrifft. Uns fehlt erstens ein guter Editor mit Highlighs, zweites das komplette Sortiment an Assembler, Comiler und Linker. Das alles soll aber kein Beinbruch sein, weshalb wir unser Taschentuch mal ganz schnell wieder beiseite legen. Welche Tools für welche Umgebung benötigt werden, wird in den nun gleich folgenden Unterpunkten genauer erklärt.
+
Mitsamt den Tools hat man fast die gleichen Voraussetzungen wie unter Linux.
  
−
===Singularity-Modell===
+
==Singularity-Modell==
 
Eine Umgebung wie diese macht nur Sinn, wenn mein sein OS wie Singularity mit Managed-Code (wie C#) entwickeln möchte. Hierfür ist Singularity ein gutes Modell, an dem man sich gut orientieren kann, sofern man einmal richtig durchgeblickt hat. Sich die Dokus von Singularity anzuschauen kann keineswegs verkehrt sein. Doch wenn man sich Singularity mal genauer anschaut, ist das eher ein Sprachenwirrwarr, Assembler, C (glaube auch C++), C# und Sing#/Spec#.
 
Eine Umgebung wie diese macht nur Sinn, wenn mein sein OS wie Singularity mit Managed-Code (wie C#) entwickeln möchte. Hierfür ist Singularity ein gutes Modell, an dem man sich gut orientieren kann, sofern man einmal richtig durchgeblickt hat. Sich die Dokus von Singularity anzuschauen kann keineswegs verkehrt sein. Doch wenn man sich Singularity mal genauer anschaut, ist das eher ein Sprachenwirrwarr, Assembler, C (glaube auch C++), C# und Sing#/Spec#.