HOME >> How To >> How to Install macOS on Windows in a Virtual Machine

How to Install macOS on Windows in a Virtual Machine

Unsure if you will get along with a Mac? Learn how to run macOS on Windows 10 with the help of a virtual machine. Windows 10 is a great operating system. It has its quirks and annoyances, but which operating system doesn’t? Even if you’re beholden to Microsoft and Windows 10, you can still shop around.

What better way to do that than from the safe confines of your existing operating system with a virtual machine? This way, you can run macOS on Windows, which is perfect for using Mac-only apps on Windows.

So, here’s how you install macOS in a virtual machine on Windows, making a virtual Hackintosh that lets you run Apple apps from your Windows machine.

What Files Do You Need to Create a macOS Virtual Machine on Windows 10?

Before delving into the “how-to,” you need to download and install the essential tools. The tutorial details how to create macOS virtual machines using both Oracle VirtualBox Manager (VirtualBox) and VMware Workstation Player (VMware Player).

You need a copy of macOS, too. Monterey is the latest stable macOS version at the time of writing, although macOS Ventura is just around the corner, You can find the download links for macOS Monterey in the next section.

This tutorial will focus on installing macOS Monterey in a virtual machine running on Intel and AMD hardware, using either VirtualBox or VMware Player.

The code snippets that an AMD system requires to boot a macOS Monterey using VMware on AMD hardware differ from the Intel code, but you can find the tutorial and the code snippet in the sections below.

One more thing to note before you get stuck into the macOS virtual machine tutorials. I found it much easier to log in to my iCloud account on the VMware Player virtual machine compared to the VirtualBox virtual machine. Your mileage is highly likely to vary, and unfortunately, although this is a working version of macOS on Windows, not all of the features you’re installing macOS for will work.

Download macOS Monterey Virtual Image

Use the download links below to download the macOS Monterey image for both VirtualBox and VMware.

Download: macOS Monterey Virtual Machine Image

Download: VMware Player Patch Tool

Once your download finishes, right-click the file, and select “Extract to macOS Monterey” using an archive tool like WinZip or 7-Zip.

How to Create a macOS Monterey Virtual Machine With VirtualBox

Before creating the macOS virtual machine, you need to install the VirtualBox Extension Pack. It includes fixes for USB 3.0 support, mouse and keyboard support, and other useful VirtualBox patches.

Download: VirtualBox Extension Pack for Windows (Free)

Scroll down, select All supported platforms to download, then double-click to install.

1. Create the macOS Monterey Virtual Machine

These instructions detail how to install a macOS Monterey virtual machine in VirtualBox on an Intel-based machine.

  1. Open VirtualBox. Select New. Type macOS. VirtualBox will detect the OS as you type and will default to Mac OS X. You can leave this as is.
  2. Regarding the virtual machine name, make it something memorable yet easy to type. You’ll need to input this name in a series of commands, and it is frustrating to type a complicated name multiple times!
  3. Next, set the amount of RAM the macOS virtual machine can use. I would suggest a minimum of 4GB, but the more you can give from the host system, the better your experience.
  4. Remember, you cannot assign more RAM than your system has available, and you need to leave some memory available for the host operating system.
  5. Now, select Create a hard disk now and select Create. On the next screen, select Virtual Hard Disk, then set the disk size to a minimum of 50GB, but ideally more if you can spare the space. macOS Monterey requires at least 35GB of storage.

2. Edit the macOS Monterey Virtual Machine Settings

Don’t try and start your macOS Monterey virtual machine yet. Before firing the virtual machine up, you need to make a few tweaks to the settings. Right-click your macOS virtual machine and select Settings.

  1. Under System, remove Floppy from the boot order. Ensure the Chipset is set to ICH9.
  2. Select the Processor tab. Assign two processors. If you have a CPU with power to spare (such as an Intel Core i7 or i9 with multiple extra cores), consider assigning more. However, this isn’t vital.
  3. Make sure the Enable PAE/NX box is checked.
  4. Under Display, set Video Memory to 128MB.
  5. Now, under Storage, select the blank disc under Storage Devices. Next, select the disk icon alongside Optical Drives. Browse to and select your macOS Monterey disk image.
  6. Finally, head to the USB tab and select USB 3.0, then press OK.

3. Use the Command Prompt to Add Custom Code to VirtualBox

It still isn’t quite a time to fire up your macOS Monterey virtual machine. In its current configuration, VirtualBox doesn’t work with your macOS disk image.

To get it up and running, you have to essentially patch VirtualBox before the macOS virtual machine will function. To do this, you need to enter some code using the Command Prompt. All the details are below.

Start by closing VirtualBox. The commands will not execute properly if VirtualBox or any of its associated processes are running. Once closed, press the Windows key + X, then select Command Prompt (Admin) from the menu.

If your menu only shows the PowerShell (or Windows Terminal option on Windows 11), type the command into your Start menu search bar. Then right-click the Best Match, and select Run as Administrator.

Use the following command to locate the Oracle VirtualBox directory:

cd "C:\Program Files\Oracle\VirtualBox\"

Now, enter the following commands, one by one. Adjust the command to match the name of your virtual machine. For instance, my virtual machine’s name is macOS Monterey. Here are the commands:

VBoxManage.exe modifyvm "macOS Monterey" --cpuidset 00000001 000106e5 00100800 0098e3fd bfebfbff
VBoxManage setextradata "macOS Monterey" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "iMac19,1"
VBoxManage setextradata "macOS Monterey" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0"
VBoxManage setextradata "macOS Monterey" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Mac-AA95B1DDAB278B95"
VBoxManage setextradata "macOS Monterey" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"
VBoxManage setextradata "macOS Monterey" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1

After the completion of the commands and presuming you encountered no errors, close the Command Prompt.

4. Boot Your macOS Monterey Virtual Machine

Reopen VirtualBox. Double-click your macOS virtual machine to start it. You will see a long stream of text, followed by the Apple logo. On the next screen, select your language of choice, then Continue.

  1. Next, select Disk Utility. You create a clean drive for macOS Monterey to install to.
  2. In the Disk Utility, select VBOX HARDDISK MEDIA from the Internal drive column.
  3. After selecting the drive, head to the Erase option found at the top of the utility.
  4. Give your drive a name, set the Format to Mac OS Extended (Journaled), and the Scheme to GUID Partition Map.
  5. Select Erase.
  6. Once complete, you can exit the Disk Utility back to the Monterey recovery screen. From here, you should select Install macOS Monterey.
  7. Select the drive you created in the Disk Utility, followed by Continue.

At this point, the installation says it’ll take a few minutes. However, in my experience, this isn’t correct. The initial installation phase took around 15 minutes, but then you land on a second installation screen after the macOS Monterey virtual machine restarts.

The initial installation time on that screen begins at around 29 minutes. However, once it reaches Less than a minute remaining and you get your hopes up—don’t.

It took another two hours for the installation to complete from this point, but I’ve also read reports of people waiting for upwards of three or four hours. Worse, there is no way to tell if the installation is ongoing or if you’re just wasting your time.

If you can afford the time, leave it for several hours, and hopefully, when you come back, you’ll be staring at the macOS Monterey Welcome page.

5. Take a macOS Monterey Virtual Machine Snapshot

Once you complete the macOS setup, take a snapshot within VirtualBox. Head to Machine > Take Snapshot, give your snapshot a name, and wait for it to process. If anything breaks or the Monterey virtual machine corrupts, you can head back to the snapshot to restore your previously good installation.

But the virtual machine snapshot is just a backup precaution. You can close your macOS virtual machine as you would with your regular computer, as the macOS virtual machine is installed on its own storage device.

Troubleshooting macOS on Windows Virtual Machine

A couple of things can go wrong during the macOS virtual machine installation in VMware Player Workstation.

  1. If you cannot see “Apple Mac OS X” during the virtual machine creation wizard, then you need to revisit the patch process. Ensure every process associated with VMware Player is off.
  2. If you receive the message “Mac OS X is not supported with binary translation” when starting the virtual machine, there is a strong chance you need to activate virtualization in your BIOS/UEFI configuration.
  3. If you receive the message “VMware Player unrecoverable error: (vcpu-0)” when starting the virtual machine, you need to head back to the macOS Monterey.vmx configuration file to ensure you added the extra line and saved the edit.
  4. If you’re running AMD hardware and get stuck at the Apple logo, first power off the virtual machine. Now, head to Settings > Options > General. Change the Guest operating system to Microsoft Windows and the Version to Windows 10 x64. Press OK, then attempt to power up the virtual machine again. Once the Apple logo passes, power down the virtual machine, then set the Guest operating system option back to Apple Mac OS X, selecting the correct version.

Leave a Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.