×
Namespaces

Variants
Actions
(Difference between revisions)

Installing the Windows Phone 8 SDK on a Mac, using Parallels

From Nokia Developer Wiki
Jump to: navigation, search
ltomuta (Talk | contribs)
m (Ltomuta -)
ltomuta (Talk | contribs)
m (Ltomuta - - Pre-requisites)
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Draft]]
+
[[Category:Tools for Windows Phone]][[Category:Windows Phone 8]][[Category:SDK]]
 
{{Abstract|This article explains how to install the Windows Phone 8 SDK on a Mac computer using the Parallels virtualization solution.}}  
 
{{Abstract|This article explains how to install the Windows Phone 8 SDK on a Mac computer using the Parallels virtualization solution.}}  
  
Line 7: Line 7:
 
|devices= Apple's Mac laptop and desktops
 
|devices= Apple's Mac laptop and desktops
 
|sdk= <!-- SDK(s) built and tested against (e.g. Windows Phone 8.0 SDK) -->
 
|sdk= <!-- SDK(s) built and tested against (e.g. Windows Phone 8.0 SDK) -->
|dependencies= OS X, Parallels, Windows 8  
+
|dependencies= OS X 10.8.4, Parallels Desktop, Windows 8.x
|signing=<!-- Special Signing requirements -->
+
|signing= <!-- Special Signing requirements -->
 
|capabilities= <!-- Required capabilities for code (e.g. ID_CAP_LOCATION, ID_CAP_NETWORKING) -->
 
|capabilities= <!-- Required capabilities for code (e.g. ID_CAP_LOCATION, ID_CAP_NETWORKING) -->
 
|language= <!-- Language category code for non-English topics - e.g. Lang-Chinese -->
 
|language= <!-- Language category code for non-English topics - e.g. Lang-Chinese -->
 
|translated-by= <!-- [[User:XXXX]] -->
 
|translated-by= <!-- [[User:XXXX]] -->
|translated-from-title= <!-- Title only - not link -->  
+
|translated-from-title= <!-- Title only - not link -->
 
|translated-from-id= <!-- Id of translated revision -->
 
|translated-from-id= <!-- Id of translated revision -->
|review-by=<!-- After re-review: [[User:username]] -->
+
|review-by= <!-- After re-review: [[User:username]] -->
 
|review-timestamp= <!-- After re-review: YYYYMMDD -->
 
|review-timestamp= <!-- After re-review: YYYYMMDD -->
 
|update-by= <!-- After significant update: [[User:username]]-->
 
|update-by= <!-- After significant update: [[User:username]]-->
Line 25: Line 25:
  
 
* Your reasonably powerful Apple Mac computer ( i5 or higher CPU, 8GB RAM recommended)
 
* Your reasonably powerful Apple Mac computer ( i5 or higher CPU, 8GB RAM recommended)
* [http://www.parallels.com/products/desktop/ Parallels Desktop 8 for Mac ]
+
* [http://www.parallels.com/products/desktop/ Parallels Desktop for Mac ]
* A Windows 8 installation kit (for example the [http://msdn.microsoft.com/en-us/evalcenter/jj554510.aspx Windows 8 Enterprise Evaluation] release)
+
* A Windows 8.x installation kit (for example the [http://msdn.microsoft.com/en-us/evalcenter/jj554510.aspx Windows 8 Enterprise Evaluation] release)
 
* The Windows Phone 8 SDK installer ([http://go.microsoft.com/fwlink/?LinkID=257234&clcid=0x409 offline] or online if internet connection is available)
 
* The Windows Phone 8 SDK installer ([http://go.microsoft.com/fwlink/?LinkID=257234&clcid=0x409 offline] or online if internet connection is available)
  
== Installation guide==
+
== Get started==
  
Install Parallels Desktop 8 following product's typical [http://kb.parallels.com/114623 install guide] and then follow Parallels' guide for [http://kb.parallels.com/4729 installing Windows 8]. It is a rather straight-forward process but since we aim to run the Windows Phone emulator (a virtual machine) inside the Parallels virtual machine we have to customize the Windows VM installation, so make sure to select "Customize settings before installation".
+
Install the latest version of Parallels Desktop (screenshots below are from version 8) following product's typical [http://kb.parallels.com/114623 install guide] and then follow Parallels' guide for [http://kb.parallels.com/4729 installing Windows 8]. It is a rather straight-forward process but since we aim to run the Windows Phone emulator (a virtual machine) inside the Parallels virtual machine we have to customize the Windows VM installation, so make sure to select "Customize settings before installation".
 
+
[[File:ParallelsWindowsInstall.png|thumb|Add caption here]]
+
  
 +
[[File:ParallelsWindowsInstall.png|frame|none|500x500px|Enable VM customization at install time...]]
  
 
== Windows VM customization ==
 
== Windows VM customization ==
Line 49: Line 48:
 
You can experiment with the two options and see which works best on your machine, we recommend the first approach if your machine is powerful enough.
 
You can experiment with the two options and see which works best on your machine, we recommend the first approach if your machine is powerful enough.
  
[[File:ParallelsCPUAndMemory.png|thumb|Add caption here]]
+
[[File:ParallelsCPUAndMemory.png|frame|none|500x500px|Configure CPU and memory for best performace]]
  
  
Line 61: Line 60:
 
Virtualization solutions such as Parallels do not typically encourage the use of virtual machines inside virtual machines (i.e. nested virtualization) but some do support it as an optional feature. We need to enable this feature in order for Windows Phone SDK's emulator to work, so as the next step we will check the corresponding "Enable" box in the Optimization page of the Options configuration dialog.
 
Virtualization solutions such as Parallels do not typically encourage the use of virtual machines inside virtual machines (i.e. nested virtualization) but some do support it as an optional feature. We need to enable this feature in order for Windows Phone SDK's emulator to work, so as the next step we will check the corresponding "Enable" box in the Optimization page of the Options configuration dialog.
  
[[File:EnableNestedVirtualization.png|thumb|Add caption here]]
+
[[File:EnableNestedVirtualization.png|frame|none|500x500px|Enable nested virtualization support]]
  
 
With these settings you are now ready to complete the Windows 8 installation according to Parallels' install guide.
 
With these settings you are now ready to complete the Windows 8 installation according to Parallels' install guide.
Line 70: Line 69:
 
Once you have Windows 8 installed fully, you can now install one of its optional features, Hyper-V. This component is required by the SDK's emulator so you must complete this step before installing the SDK.
 
Once you have Windows 8 installed fully, you can now install one of its optional features, Hyper-V. This component is required by the SDK's emulator so you must complete this step before installing the SDK.
  
[[File:InstallHyperV.png|thumb|Add caption here]]
+
[[File:InstallHyperV.png|frame|none|500x500px|Install Hyper-V support in Windows.]]
  
 
A reboot will likely be required in order to compete the installation of this feature.
 
A reboot will likely be required in order to compete the installation of this feature.
Line 77: Line 76:
 
== Install the Windows Phone 8 SDK==
 
== Install the Windows Phone 8 SDK==
  
You are now ready to install the Windows Phone 8 SDK. If you have already downloaded the offline installer (ISO file) make sure to transfer it inside the Windows VM image and open it from there (you can map the *.iso as a drive and then run the setup utility). If you have an internet connection you can use the online installer. Just follow the standard installation process, there are no extra tricks :)
+
You are now ready to install the Windows Phone 8 SDK. If you have already downloaded the offline installer (ISO file) make sure to transfer it inside the Windows VM image and open it from there (you can map the *.iso as a drive and then run the setup utility). If you have an internet connection you can use the online installer. Follow the installation flow and restart the virtual machine when required.
  
 
You can now create your first Windows Phone 8 project and have it running in the emulator or on your Windows Phone 8 device.
 
You can now create your first Windows Phone 8 project and have it running in the emulator or on your Windows Phone 8 device.
  
 +
Note that you have now Windows running as a guest OS hosted by OS X. Only one of these OSs can access the USB port so when connecting the Windows Phone to your Mac expect to see a prompt asking which OS should gain control over the new device. Select Windows Phone and you will see the appropriate drivers being installed by the OS. Once the driver installation completed you can run the SDK tools to developer unlock the device and then start deploying apps to it.
  
 
==Lower SDK emulator's CPU requirements==
 
==Lower SDK emulator's CPU requirements==
Line 88: Line 88:
 
You can find instructions for how to change this setting in Parallels' [http://kb.parallels.com/en/115211 Windows Phone 8 SDK install guide].
 
You can find instructions for how to change this setting in Parallels' [http://kb.parallels.com/en/115211 Windows Phone 8 SDK install guide].
  
[[File:LowerSDKcpu.png|thumb|Add caption here]]
+
[[File:LowerSDKcpu.png|frame|none|500x500px|Change the number of CPUs available to the emulator VM]]
 +
 
  
  
Line 94: Line 95:
  
 
TBD
 
TBD
 +
 +
 +
{{SeeAlso|[[Windows Phone 8 SDK on a Virtual Machine with Working Emulator]]}}

Latest revision as of 22:51, 4 October 2013

This article explains how to install the Windows Phone 8 SDK on a Mac computer using the Parallels virtualization solution.

WP Metro Icon Tools.png
WP Metro Icon WP8.png
Article Metadata
Tested with
Devices(s): Apple's Mac laptop and desktops
Compatibility
Platform(s):
Windows Phone 8
Dependencies: OS X 10.8.4, Parallels Desktop, Windows 8.x
Article
Created: ltomuta (27 Aug 2013)
Last edited: ltomuta (04 Oct 2013)

Contents

[edit] Pre-requisites

[edit] Get started

Install the latest version of Parallels Desktop (screenshots below are from version 8) following product's typical install guide and then follow Parallels' guide for installing Windows 8. It is a rather straight-forward process but since we aim to run the Windows Phone emulator (a virtual machine) inside the Parallels virtual machine we have to customize the Windows VM installation, so make sure to select "Customize settings before installation".

Enable VM customization at install time...

[edit] Windows VM customization

If you have neglected to enabled VM customization at install time, or if you want to experiment with other combination of options, you can edit the setting below, and many more which are not directly relevant for this subject, using Parallels' Virtual machine -> Configure... menu. For the settings to be accessible simply stop the running VM then restart it after the settings have been changed.


[edit] Number of CPU cores

The Windows Phone Emulator's Windows Phone 8 images come configured for multicore devices, so they expect to have two CPU cores available to them. However by default Parallels makes only once CPU core available to Windows, invoking stability concerns. We have therefore two options here:

  • change VM's configuration to allow Windows to see two (or more) CPU cores
  • install Windows on a machine with just 1 CPU and later edit emulator VM's settings to lower its CPU setting.

You can experiment with the two options and see which works best on your machine, we recommend the first approach if your machine is powerful enough.

Configure CPU and memory for best performace


[edit] Memory allocation

Parallels recommends that for a Windows VM you should allocate between 512 MB and 4 GB. We recommend at least 2 GB if you do not plan to use the SDK emulator and 4 GB or more if you plan to use the SDK emulator inside the VM. Of course the amount of memory you can make available to the VM depends on the amount of RAM available on your Mac, you should not allocate more than 50% of the total RAM to the VM.


[edit] Nested virtualization

Virtualization solutions such as Parallels do not typically encourage the use of virtual machines inside virtual machines (i.e. nested virtualization) but some do support it as an optional feature. We need to enable this feature in order for Windows Phone SDK's emulator to work, so as the next step we will check the corresponding "Enable" box in the Optimization page of the Options configuration dialog.

Enable nested virtualization support

With these settings you are now ready to complete the Windows 8 installation according to Parallels' install guide.


[edit] Enable Hyper-V

Once you have Windows 8 installed fully, you can now install one of its optional features, Hyper-V. This component is required by the SDK's emulator so you must complete this step before installing the SDK.

Install Hyper-V support in Windows.

A reboot will likely be required in order to compete the installation of this feature.


[edit] Install the Windows Phone 8 SDK

You are now ready to install the Windows Phone 8 SDK. If you have already downloaded the offline installer (ISO file) make sure to transfer it inside the Windows VM image and open it from there (you can map the *.iso as a drive and then run the setup utility). If you have an internet connection you can use the online installer. Follow the installation flow and restart the virtual machine when required.

You can now create your first Windows Phone 8 project and have it running in the emulator or on your Windows Phone 8 device.

Note that you have now Windows running as a guest OS hosted by OS X. Only one of these OSs can access the USB port so when connecting the Windows Phone to your Mac expect to see a prompt asking which OS should gain control over the new device. Select Windows Phone and you will see the appropriate drivers being installed by the OS. Once the driver installation completed you can run the SDK tools to developer unlock the device and then start deploying apps to it.

[edit] Lower SDK emulator's CPU requirements

As mentioned above the emulator image is configured with multicore support so it does expect that Windows has at least two CPU cores available. If you chose to (or are forced to) allocate only one CPU to the Windows VM you will have to lower the CPU setting for the emulator as well, or else the emulator image cannot be started.

You can find instructions for how to change this setting in Parallels' Windows Phone 8 SDK install guide.

Change the number of CPUs available to the emulator VM


[edit] Troubleshooting

TBD


This page was last modified on 4 October 2013, at 22:51.
376 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×