Ist Mac OS X in einer VirtualBox-VM für die iOS-Entwicklung geeignet?

8

Ich habe es endlich geschafft, Mac OS X mit VirtualBox und einem Tutorial von Lifehacker in einer virtuellen Maschine auf meinem Windows 7-Laptop zu installieren.

Die Leistung ist sehr langsam. Mountain Lion meldet, dass nur 4 MB Videospeicher angezeigt werden (ich habe den Intel HD3000-Treiber nicht geladen). Youtube ist im Wesentlichen nicht spielbar, selbst der Audio-Trank stottert. Das heißt, die Benutzeroberfläche und die allgemeine Benutzeroberfläche sind ziemlich akzeptabel.

Ist es trotz dieser langsamen Leistung sinnvoll, mit Xcode herunterzuladen und zu entwickeln? Ich reserviere 3 GB RAM. Wie wäre die Leistung unter diesen Bedingungen?

Rot und weiß
quelle
1
Sie können es versuchen und sehen, aber ich bezweifle, dass es eine geeignete Umgebung für die Entwicklung sein wird.
Jakev
Wäre es nicht mehr darum, Ihre VM-Software so zu optimieren und zu konfigurieren, dass sie Ihren Hardwareeinschränkungen entspricht, als um irgendetwas, was mit OS X zu tun hat?
bmike

Antworten:

7

Wenn dies ein Hobby ist und Sie nicht vorhaben, Apps für den App Store freizugeben, die langsame Leistung tolerieren und sich nicht um die Ausführung auf realen Geräten kümmern, machen Sie sich darüber keine Sorgen. Wenn Sie jedoch ein Unternehmen gründen, ist es wichtig, auf echter Hardware zu arbeiten. Jeder Low-End-Mac (MacBook Air 11 "ist mein aktueller Favorit) wird jede virtuelle Maschine umhauen.

Ich habe eine ziemlich einfache App, die auf meinem iPad und iPod Touch einwandfrei funktioniert, aber alle möglichen grafischen Anomalien im Simulator aufweist.

Ɱark Ƭ
quelle
4
Ich habe eine VM mit 4cpus @ 4GHZ und 4 GB RAM erstellt. Die Kompilierungsgeschwindigkeit bläst eine Macbook-Luft aus dem Wasser. Das einzige, was auf der VM abgehackt ist, sind Grafiken, aber es ist erträglich genug, dass ich es einfach auf meinem echten iPhone bereitstellen kann, um es bei Bedarf zu testen.
Avindra Goolcharan
3

Virtualbox unter Windows ist definitiv nicht dafür geeignet, da Windows selbst sehr ressourcenintensiv ist, Virtualbox viele Konfigurationsoptionen fehlt und selbst wenn Sie es zum Laufen bringen können, wird es ziemlich unzuverlässig sein, ganz zu schweigen davon, dass Sie nicht durchgehen können USB-Geräte.

Was Sie tun können (und ich habe es mit großem Erfolg getan), ist die Verwendung einer leichtgewichtigen Linux-Installation als Basis für QEMU, eine Virtualbox-Alternative mit viel mehr Konfigurationsoptionen, einschließlich der Möglichkeit, die Apple SMC und ihr "OSK" zu emulieren. Zeichenfolge (Sie benötigen keine zwielichtigen "Hackintosh" -Schlüssel) und es hat einen zuverlässigen USB-Durchgang (ich habe erfolgreich iOS-Geräte wiederhergestellt und Apps darauf installiert).

Am Ende kann ich mit meiner Lösung Yosemite erfolgreich mit 3,5 GB RAM ausführen (von den 4 GB meines Computers und durch Optimierung des Host-Systems könnte ich es wahrscheinlich noch weiter auf 3,7 GB steigern) zwei Kerne meiner CPU, mit zuverlässigem USB-Durchgang und ohne Optimierung (die emulierte Hardware ist nah genug an einem echten Mac, dass das Betriebssystem direkt ohne Kernel-Befehlszeilenparameter oder zusätzliche Kexte startet). Eine SSD ist ein Muss, eine Festplatte ist verdammt langsam (das gilt auch für einen echten Mac). Grafiken sind immer noch langsam (und in Yosemite ist es noch schlimmer), aber abgesehen vom Anmeldebildschirm, dessen Rendern aufgrund seiner Transparenz gut 5 Sekunden dauert, ist alles andere ziemlich brauchbar und reicht für gelegentliche (Hobby-) iOS-Entwicklungen aus, bis Sie genug bekommen Erfahrung, um profitable Apps zu machen, in welchem ​​Fall es '

Ich habe in meinem Blog eine ausführliche Anleitung zum Erstellen einer Yosemite-VM veröffentlicht. Wenn Sie interessiert sind, können Sie diese gerne überprüfen.


quelle
2
Abstimmung, aber der Link zum Blog-Beitrag ist jetzt ungültig
Mixaz
Funktioniert das unter WSL?
Killroy
2

Irgendwo warnt VirtualBox Sie im Handbuch hier, dass Sie KEINE Grafikbeschleunigung haben werden. Es gibt keine beschleunigten Treiber für Mac OS X, daher arbeiten Sie im Wesentlichen im "abgesicherten Modus" für Grafiken mit VESA-Treibern. Apple hatte zu einem bestimmten Zeitpunkt eine öffentliche Treiber-API, aber es muss einen Grund geben, warum VirtualBox-Entwickler noch keinen Grafiktreiber für OS X veröffentlicht haben.

Lesen Sie die verlinkte Handbuchseite und dokumentieren Sie weitere Probleme mit OS X-Gästen.

Das Ergebnis ist keine Virtualisierung, sondern eine Annäherung an die CPU-Virtualisierung. Ihr Grafiksystem wird vollständig emuliert, hauptsächlich von Mac OS X selbst, da keine beschleunigten Grafiktreiber vorhanden sind.

Die Mac OS X-Virtualisierung in VirtualBox ist nicht für den ernsthaften Einsatz auf dem Desktop vorgesehen. Es ist für die Servervirtualisierung vorgesehen.

Kirn Gill
quelle
0

Im Wesentlichen führen Sie zwei virtuelle Boxen aus, wenn Sie den iOS-Emulator verwenden und diesen Ansatz wählen. 1 für OSX und 1 (im Wesentlichen) für den Emulator. Dies kann sehr CPU- und RAM-intensiv werden, ist aber machbar. Beste Wette, probieren Sie es aus. Wenn Sie nicht mögen, entfernen Sie einfach das VM-Image.

Agent 404
quelle
Was ist mit der Legalität davon? Ich besitze eine Lizenz für Mountain Lion, als ich sie für mein persönliches MacBook Pro gekauft habe, aber ich habe eine gehackte ISO für meinen Arbeitslaptop installiert
Redandwhite
Soweit ich weiß, zahlen Sie nicht für den Inhalt des Betriebssystems, sondern für die Rechte des Betriebssystems. Daher scheint mir dies zu 100% legal zu sein. Ich habe vor ungefähr einem Jahr das Gegenteil mit Windows (und Android Emulator) gemacht.
Agent 404
1
OS X wurde bisher nur für die Ausführung auf Macintosh-Hardware lizenziert.
bmike
7
AFAICT, das ist nicht wahr. Der iOS-Simulator ist kein Emulator. Es erstellt Ihren Code für x86 und verknüpft mit nativen x86-Frameworks.
Ken