9

I have finally successfully managed to install Mac OS X in a virtual machine on my Windows 7 laptop using VirtualBox and a tutorial from Lifehacker.

Performance is very slow, with Mountain Lion reporting that it is seeing just 4MB video memory (I didn't manage to load the Intel HD3000 driver). Youtube is essentially unplayable, with even the audio potion stuttering. That said, the interface and general UI is pretty acceptable.

Even with such slow performance, does it make sense to download and develop with Xcode? I am allocating 3GB of RAM. What would performance be like under those conditions?

2
  • 1
    you can try it and see, but I doubt it will be a suitable environment for development.
    – jakev
    Sep 5, 2012 at 18:59
  • Wouldn't this be more about tuning and configuring your VM software to match your hardware limitations than anything OS X related?
    – bmike
    Sep 5, 2012 at 19:21

4 Answers 4

9

If this is a hobby and you are not planning on releasing any apps to the app store, and you can tolerate the slow performance and don't care about running on real devices, then don't worry about it. However, if you are creating a business the it is essential to run on real hardware. Any low end Mac (MacBook Air 11", is my current favorite) will blow away any virtual machine.

I have a fairly simple app that runs fine on my iPad and iPod Touch, but has all sorts of graphic anomalies in the simulator.

1
  • 5
    I created a VM with 4cpus @4GHZ, and 4GB of RAM. The compilation speed blows a Macbook air out of the water. The only thing that is choppy on the VM is graphics, but it's bearable enough that I can just deploy to my real iPhone to test when I need to. Jan 4, 2016 at 23:49
4

Virtualbox on Windows is definitely not suitable for this, as Windows itself is quite resource-hungry, Virtualbox lacks many configuration options and even if you can get it to work it's going to be quite unreliable, not to mention that you can't pass through USB devices.

What you can do (and I have done it with much success) is use a lightweight Linux installation as a base for QEMU which is a Virtualbox alternative, with much more configuration options, including the ability to emulate the Apple SMC and its "OSK" string (you won't need shady "hackintosh" kexts) and it has reliable USB pass through (I successfully restored iOS devices and installed apps on them).

In the end, with my solution I am able to successfully run Yosemite with 3,5GB of RAM (out of the 4GBs of my computer, and by tweaking the host system I could probably push it even more to 3,7GB), using the two cores of my CPU, with reliable USB pass through and no tweaking required (the emulated hardware is close enough to a real Mac that the OS boots directly without any kernel command line parameters or extra kexts). An SSD is a must have though, a hard drive will be bloody slow (that's also true for a real Mac). Graphics are still slow (and it's even worse in Yosemite) but besides the login screen which takes a good 5 seconds to render due to its transparency, everything else is pretty usable, and it's enough for occasional (hobby) iOS development until you get enough experience to make profitable apps in which case it's still better to buy a real Mac as this setup may break at any update.

I posted a detailed guide on my blog about how to create a Yosemite VM, feel free to check it out if you're interested.

4
  • 3
    voting up but the link to blog post is invalid now
    – Mixaz
    Aug 25, 2015 at 11:55
  • Does this work under WSL?
    – Killroy
    Sep 6, 2018 at 15:05
  • this could be a super-interesting answer, but the link is borken.
    – user239558
    Jun 14, 2020 at 8:02
  • remember everyone, the web is archived at many places. here is the blog post he linked OS X Yosemite on QEMU success story
    – gcb
    Mar 20, 2021 at 22:07
2

Somewhere, VirtualBox warns you in the manual here that you will NOT have graphics acceleration. There are no accelerated drivers for Mac OS X, so you are essentially running in "safe mode" for graphics, using VESA drivers. Apple had a public driver API at one point, but there's got to be some reason that VirtualBox developers haven't released a graphics driver for OS X yet.

Read the manual page linked, it also documents other issues you will have with OS X guests.

The result is not virtualization, but closer to paraemulation with CPU virtualization. Your graphics system is fully emulated, mostly by Mac OS X itself due to the lack of accelerated graphics drivers.

Mac OS X virtualization in VirtualBox is not intended for serious desktop use. It is intended for server virtualization.

0

Essentially, you're running 2 virtual boxes if you use the iOS emulator and take this approach. 1 for OSX and 1 (essentially) for the emulator. This can get very cpu and ram intensive but it's doable. Best bet, give it a shot. If you don't like, just remove the vm image.

4
  • What about the legality of it? I own a license for Mountain Lion as I bought it for my personal MacBook Pro, but I've installed a hacked ISO for my work laptop Sep 5, 2012 at 19:23
  • As far as I know, you dont pay for the content of the operating system, you pay for the rights of the operating system. Thus, this seems 100% legal to me. I did the opposite with Windows (and Android Emulator) about a year ago. Sep 5, 2012 at 19:24
  • 2
    OS X has only ever been licensed to run on Macintosh hardware.
    – bmike
    Sep 5, 2012 at 19:41
  • 8
    AFAICT, this is not true. The iOS Simulator is not an emulator. It builds your code for x86, and links against native x86 frameworks.
    – Ken
    Sep 6, 2012 at 18:58

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .