Skip to content

Windows on ARM64

Bill Ticehurst edited this page Jan 22, 2025 · 3 revisions

The qsharp package works natively on Windows on ARM64 and installs without issue. However, you'll want to typically work with Jupyter Notebooks (especially for qsharp-widgets), and thus will need other common packages installed.

The Windows on ARM64 installs can be a challenge, as many Python packages do not have binary wheels available, and thus need to be built locally from source when installed. Specifically, numpy and pandas require the C++ Build Tools, and jupyterlab also require a Rust compiler.

Note that scipy will not install at all on Windows on ARM64, and that as qiskit depends on scipy it will also fail to install. (See tracking issue https://github.com/scipy/scipy/issues/21562). The conda project also does not support Windows on ARM64 currently - see https://github.com/conda/conda/issues/11472)

The easiest way to install the C++ Build Tools, Rust, and Python itself on a Windows machine is via winget. To install the Visual Studio C++ Build Tools with the necessary components run:

winget install Microsoft.VisualStudio.2022.BuildTools --force --override "--wait --quiet --add Microsoft.VisualStudio.Workload.VCTools --add Microsoft.VisualStudio.Component.Windows11SDK.22621 --add Microsoft.VisualStudio.Component.VC.Tools.ARM64 --add Microsoft.VisualStudio.Component.VC.CMake.Project --add Microsoft.VisualStudio.Component.VC.Llvm.Clang"

Relaunch the terminal so it picks up the updated PATH and other settings, then run the below to install Rust:

winget install Rustlang.Rustup

Again, relaunch the terminal to pick up the changed environment, then run the below to install Python:

winget install Python.Python.3.13

After one more relaunch of the terminal, you should be ready to go. Run the below to create a virtual environment and install the packages shown (this will take a while):

mkdir \demo && cd \demo
python -m venv .venv
.venv\Scripts\activate
pip install jupyterlab numpy pandas