Entwicklung mit einem Mac

Aus Das Sopra Wiki

Dieser Artikel gibt Hilfestellungen und Antworten zu häufig auftretenden Problemen und Fragen, wenn man einem Mac entwickeln möchte. Nicht jede der hier beschriebenen Lösungen erlaubt es, jede im Downloadbereich befindliche Software zu installieren.

Voraussetzungen

Die folgenden Voraussetzungen müssen erfüllt sein, damit MonoGame mit einem Mac entwickelt werden kann:

  1. Der Mac muss einen Intel Prozessor besitzen.
  2. Eine der folgenden Betriebssysteme oder Betriebssystem-Erweiterungen müssen installiert sein:
    • OS X (früher Mac OS X)
    • Windows 7 64bit mit Boot Camp.

Native Windows Installation

Die beste Kompatibilität mit allen im Softwarepraktikum verwendeten Programmen und Diensten schafft eine native Installation von Windows auf einer zweiten Partition. Da die Treiberunterstützung von Apple für Windows nur für x86 Prozessoren gegeben ist, ist zwingend ein Mac mit Intel Prozessor notwendig.

Vorteile:

  • Windows läuft nativ auf dem Prozessor, wodurch es keine Performance-Einschränkungen gibt.
  • Die vollständige Installation der benötigten Software (Visual Studio, ReSharper, etc.) ist möglich.
  • Volle Grafikunterstützung ist vorhanden.
  • Entwicklung ist nicht nur mit MonoGame sondern auch mit XNA möglich, da es sich um eine vollständige Windows-Installation handelt.

Nachteile:

  • Erhöhter Bedarf von Festplattenplatz wegen der Notwendigkeit einer gesonderten Partition für Windows (empfohlen ist eine Partitionsgröße von mindestens 60 GB).
  • Häufig verwendete Software muss doppelt installiert werden, wenn man unter Windows auch andere Dinge machen möchte (Browser, PDF Viewer, Mailtool, ...).
  • Zum wechseln zwischen den Systemen muss immer ein Neustart durchgeführt werden.

Eine native Installation von Windows auf einem Mac lässt sich mittels Boot Camp[1] durchführen. Hierbei wird unter OS X eine Partition angelegt und Windows von einem externen Installationsmedium (z.B. USB Stick) installiert.

Windows in einer Virtuellen Maschine

Windows kann auch in einer Virtuellen Maschine unter OS X betrieben werden.

Vorteile:

  • Es wird weniger Speicherplatz benötigt als eine native Installation mit Boot Camp (ca. 30 GB sind ausreichend).
  • OS X mit seinen Programmen läuft weiter und kann weiter benutzt werden. Es ist kein Neustart notwendig.
  • Entwicklung ist nicht nur mit MonoGame sondern auch mit XNA möglich, da es sich um eine vollständige Windows-Installation in der virtuellen Maschine handelt.

Nachteile:

  • Da Windows in einer virtuellen Maschine läuft, kann die Performance von MonoGame oder XNA je nach Alter des Macs (Prozessortyp, Arbeitsspeicher, usw.) sehr schlecht sein.
  • Es kann unerwartetes Verhalten bei Darstellungen auftreten. Zum Beispiel ist es möglich, dass ein Mauszeiger gezeichnet wird, obwohl dieser eigentlich nicht gezeichnet werden dürfte.[2]
  • Die Installation der virtuellen Maschine und Windows ist relativ aufwendig.
  • Dadurch, dass zwei Betriebssysteme "parallel" laufen, wird erheblich viel mehr RAM gebraucht, als bei einer nativen Lösung (empfohlen werden mindestens 8 GB System-RAM).

Es gibt unterschiedliche Software, mit der eine virtuelle Maschine erstellt werden kann. Die zwei größten und meistbenutzten Softwarelösungen sind VirtualBox und VMWare. Im Folgenden wird die Installation von Windows für diese beiden Lösungen beschrieben.

Oracle VirtualBox

Im folgenden wird ausführlich beschrieben, wie VirtualBox mit einem Windows Gastsystem installiert wird. Benötigt wird folgende Software:

Abbildung 1: VirtualBox Fenster nach erstmaligem Ausführen.

Installieren Sie zunächst VirtualBox. Starten Sie die Anwendung danach. Es sollte sich ein Fenster, wie in Abbildung 1 dargestellt, öffnen.

Abbildung 2: Auswählen eines Namens und Betriebssystems für die neue virtuelle Maschine.

Um eine neue virtuelle Maschine zu erstellen, klicken Sie entweder auf den Button "Neu", wählen Sie im Menü "Maschine -> Neu..." aus, oder verwenden Sie die Tastenkombination CMD+N. Es öffnet sich ein Wizard zur Erstellung einer neuen virtuellen Maschine, wie in Abbildung 2 dargestellt. Verwenden Sie als Name der virtuellen Maschine zum Beispiel Sopra und wählen Sie eine Windows Version aus, z.B. Windows 10 (64-bit).

Abbildung 3: Zuweisung von Arbeitsspeicher.

Sie sollten mindestens 4 GB RAM zuweisen, damit Windows, Visual Studio und das Spiel genügend Arbeitsspeicher zur Verfügung haben. Beachten Sie, dass der Arbeitsspeicher, der dem Gast zur Verfügung gestellt wird, nicht mehr für OS X zur Verfügung steht, wenn die virtuelle Maschine läuft.

Abbildung 4: Auswahl der Festplatte für die virtuelle Maschine.

Sie können dann eine virtuelle Festplatte zur virtuellen Maschine hinzufügen. Sie können ebenfalls eine bereits existierende virtuelle Festplatte auswählen. Für eine Erstinstallation, wählen Sie "Festplatte erzeugen" aus.

Abbildung 5: Auswahl des Festplattenformats.

Wenn Sie angegeben haben, dass eine neue virtuelle Festplatte erzeugt werden soll, wählen Sie den entsprechenden Typ der Festplatte aus. Hier können Sie aus den folgenden Modi wählen:

  1. VDI (VirtualBox Disk Image): Das Festplattensystem von Oracle VirtualBox. Bietet die höchste Kompatibilität mit allen VirtualBox-bezogenen Anwendungen.
  2. VMDK (Virtual Machine Disk): Dieses Format wird von VMWare verwendet. Festplatten, die mit diesem Format erzeugt wurden, können auch von VMWare gelesen werden.
  3. VHD (Virtual Hard Disk): Dieses Format wird von Microsoft Virtual PC, der PC Virtualisierungssoftware von Microsoft, verwendet. Festplatten, die mit deisem Format erzeugt wurden, können auch von Microsoft Virtual PC gelesen werden.
  4. HDD (Parallels Hard Disk): Dieses Format wird von der Parallels Virtualisierungsumgebung für OS X verwendet.
  5. QED (QEMU Enhanced Disk): Dieses Format wird von QEMU verwendet.
  6. QCOW (QEMU Copy on Write): Dieses Format wird ebenfalls von QEMU verwendet. Es handelt sich jedoch um ein Festplattenformat, das es erlaubt, die allozierte Größe der Festplatte dynamisch wachsen zu lassen.

Falls Sie nicht planen, die erzeugte virtuelle Festplatte mit einer anderen Virtualisierungssoftware zu öffnen, wählen Sie hier VDI aus.

Abbildung 6: Auswahl der Allozierungsstrategie.

Falls Sie VDI als Festplattenformat ausgewählt haben, können Sie hier die Allozierungsstrategie festlegen:

  1. "dynamisch alloziert" bedeutet, dass das Festplattenimage auf dem Host-System zunächst nur in minimaler Größe angelegt wird, um Platz zu sparen. Braucht man im Gast-System mehr speicher, wird das Festplattenimage im Host automatisch vergrößert, bis die angegebene Festplattengröße erreicht wurde. Die Zugriffsgeschwindigkeit des Gastsystems auf die Festplatte kann
  2. "feste Größe" bedeutet, dass sofort die gesamte Größe der Festplatte auf dem Host angelegt wird. Diese Lösung verbraucht den meisten Speicherplatz auf der Festplatte, sorgt jedoch dafür, dass die Zugriffsgeschwindigkeit des Gastsystems auf die Festplatte schneller ist, als bei dynamischer Allozierung.


An dieser Stelle gibt man den Namen der Virtuellen Festplatte an. Es empfiehlt sich die gleich zu benennen, wie die VM. Falls die Virtuelle Festplatte aus Platzgründen zum Beispiel auf eine externe Festplatte gelegt werden soll, kann der Pfad über das Ordnersymbol geändert werden. Ein Klick auf "Erzeugen" schließt den Assistenten ab.

Abbildung 7:


Die Einstellungen müssen aber noch weiter modifiziert werden. Dazu klickt man auf "Ändern".

Abbildung 8:


Unter "System", "Prozessor" sollte die Anzahl an CPUs auf auf zwei gesetzt werden. Damit steht dann ein Core für das Spiel zur Verfügung und einer für den Rest innerhalb der VM.

Abbildung 9:


Unter "Anzeige" muss die 3D-Beschleunigung aktiviert aktiviert und der Grafikspeicher auf 256 MB hochgesetzt werden. Anschließend mit "Ok" die Einstellungen schließen.

Abbildung 10:


Jetzt kann die VM gestartet werden. Beim ersten Start fragt der nach dem Installationsmedium. Hier dem Pfad zur vorher heruntergeladenen Windows ISO angeben. Die Windows Installation sollte problemlos funktionieren und selbsterklärend sein.

Abbildung 11:


Nach der Installation und den Benutzereinstellungen präsentiert sich einem der Wunderschöne Desktop. Als nächstes werden die Treiber installiert. Dafür klickt man im Menü auf "Devices" und anschließend auf "Insert Guest Additions CD image". Es sollte sich ein Installer öffnen. Wenn nicht, kann der auch über den Arbeitsplatz und dann das CD-Laufwerk erreicht werden.

Abbildung 12:


Bei der Installation kann blind auf "weiter" geklickt werden. Bei auftretenden Warnungen immer fortfahren. Durch das fertig stellen, wird die VM neu gestartet.

Abbildung 13:


Wir einen anderen Grafiktreiber installieren. Der muss zunächst in der VM heruntergeladen werden. Datei:Wddm driver.zip Als erstes wird der aktuelle Treiber Deinstalliert. Dazu geht man in den Geräte-Manager. (Diesen erreicht man, indem man auf Start klickt und "Geräte-Manager" eintippt.) Jetzt die Eigenschaften der Grafikkarte öffnen. Treiber. und dann "Treiber Deinstallieren". Bei der Nachfrage den Hacken setzen, dass die Treibersoftware vom Gerät gelöscht werden soll.

Abbildung 14:


Um die Grafikkarte wieder auffindbar zu machen: Unter "Aktion" "Nach geänderter Hardware suchen" und dann taucht da wieder was auf. Entweder ein "VGA" oder ein "Microsoft Basic Display Adapter".

Abbildung 15:


Wie zuvor gehen wir jetzt wieder in die Eigenschaften und wählen "Treiber aktualisieren" aus. "Auf dem Computer nach Treibersoftware suchen."

Abbildung 16:


Jetzt geben wir den Pfad zu dem Treiber an, der zuvor heruntergeladen und entpackt wurde und vollenden die Installation.

Abbildung 17:


Ab jetzt ist die VM Einsatzbereit und sie können mit der Installation der benötigten Software für das Softwarepraktikum fortfahren:

VMWare Fusion

Weitere Informationen: https://www.vmware.com/de/products/fusion Von uns bislang noch nicht auf seine Tauglichkeit im rahmen des Softwarepraktikums getestet.

Parallels

Weitere Informationen: http://www.parallels.com/de/products/desktop Von uns bislang noch nicht auf seine Tauglichkeit im rahmen des Softwarepraktikums getestet.

Arbeiten unter Mac OS X

Theoretisch kann man das Softwarepraktikum auch ohne Windows durchführen. Aber wir raten von dieser Möglichkeit klar ab!

Vorteile:

  • Wie bei der nativen Installation von Windows beste Performance.
  • Geringster bedarf an Festplattenspeicher.
  • Kein Windows wird benötigt.

Nachteile:

  • Dadurch kein Visual Studio verwendet wird, gibt es auch kein ReSharper und damit keine Prüfung des Code-Styles. Code-Style muss "aus dem Kopf" gemacht werden. Bzw. von anderen Gruppenmitgliedern überprüft werden.
  • Es muss eine extra Solution für Xamarin gepflegt werden.
  • Kein Support von uns.

Falls man sich doch dazu entscheidet unter Mac OS zu programmieren, benötigt man folgende Tools. Diese müssen heruntergeladen und installiert werden:

Ein SVN Client wird nicht weiter benötigt. Mit dem Terminal kann das SVN ausgecheckt werden. Weitere Informationen: http://redmine.jamoma.org/projects/modular/wiki/Using_Subversion_from_command-line_client_(Mac_OSX)

An dieser Stelle hat man alles was man für das Softwarepraktikum braucht, um unter Mac OS zu arbeiten. Viel Glück! Wir freuen uns über Erfahrungsberichte!

Referenzen

  1. Detaillierte Informationen zu Boot Camp: https://www.apple.com/support/bootcamp/
  2. Der Mauszeiger wird in der virtuellen Maschine gezeichnet, obwohl er eigentlich nicht gezeichnet werden dürfte. Siehe dazu auch den Hinweis zur entsprechenden funktionalen Anforderung in Aufgabe 5 der Hausaufgabe.