Skip to content

Add Windows ARM64 build and test support - #7552

Open
mayankag-qti wants to merge 2 commits into
isl-org:mainfrom
mayankag-qti:windows-arm64-pr
Open

mayankag-qti wants to merge 2 commits into
isl-org:mainfrom
mayankag-qti:windows-arm64-pr

Conversation

@mayankag-qti

@mayankag-qti mayankag-qti commented Sep 8, 2026

Copy link
Copy Markdown

Type

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality).
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

Motivation and Context

This PR adds native Windows ARM64 build, wheel and test support for Open3D.
The changes add ARM64-specific configuration and test handling while preserving existing behavior on Windows x64, Linux ARM64, macOS ARM64.

Checklist:

  • I have run python util/check_style.py --apply to apply Open3D code style
    to my code.
  • This PR changes Open3D behavior or adds new functionality.
    • Both C++ (Doxygen) and Python (Sphinx / Google style) documentation is
      updated accordingly.
    • I have added or updated C++ and / or Python unit tests OR included test
      results
      (e.g. screenshots or numbers) here.
  • I will follow up and update the code if CI fails.
  • For fork PRs, I have selected Allow edits from maintainers.

Description

Changes

  • Added native Windows ARM64 build and wheel-test jobs.
  • Added Windows ARM64 target detection and dependency configuration.
  • Added an Eigen-based LAPACK fallback for builds without LAPACKE.
  • Added fallback handling for unavailable Embree and VTK functionality.
  • Skipped tests requiring disabled optional components.
  • Avoided unconditional PyTorch imports when PyTorch operations are not built.
  • Scoped ARM64 Python and vcpkg dependency changes to Windows ARM64.

Validation

Python wheel

pip wheel created at C:/Open3D/build/lib/python_package/pip_package
Built wheel: open3d-0.19.0+5ad8035-cp312-cp312-win_arm64.whl

### Python tests

525 passed, 4023 skipped in 81.91s (0:01:21)

### C++ tests

1388 tests from 109 test suites ran.
1368 passed.
20 skipped.

The skipped tests require optional components unavailable in the Windows ARM64 configuration, such as Embree, VTK, GPU backends, or the USD importer.

@update-docs

update-docs Bot commented Sep 8, 2026

Copy link
Copy Markdown

Thanks for submitting this pull request! The maintainers of this repository would appreciate if you could update the CHANGELOG.md based on your changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant