Skip to content

Provide wheel for Windows ARM64 #1495

@khmyznikov

Description

@khmyznikov

What is the current behavior?

Unable to install the package from pip.

What is the desired behavior?

To have native wheel for WoA. GitHub Actions now supports win-arm64 for free.

Installation method/steps

  • Installation method - pip wheel
  • How did you install PROJ? - pip wheel
Install log
(env_orange_pyarrow) PS X:\GitHub\Windows-DevRel\Tools\ML-tests> pip install proj
Collecting proj
  Downloading proj-0.2.0-py2.py3-none-any.whl.metadata (3.3 kB)
Collecting arrow>=0.15.6 (from proj)
  Using cached arrow-1.3.0-py3-none-any.whl.metadata (7.5 kB)
Collecting click>=7.1.2 (from proj)
  Downloading click-8.2.0-py3-none-any.whl.metadata (2.5 kB)
Collecting python-dateutil>=2.7.0 (from arrow>=0.15.6->proj)
  Using cached python_dateutil-2.9.0.post0-py2.py3-none-any.whl.metadata (8.4 kB)
Collecting types-python-dateutil>=2.8.10 (from arrow>=0.15.6->proj)
  Using cached types_python_dateutil-2.9.0.20241206-py3-none-any.whl.metadata (2.1 kB)
Collecting colorama (from click>=7.1.2->proj)
  Using cached colorama-0.4.6-py2.py3-none-any.whl.metadata (17 kB)
Collecting six>=1.5 (from python-dateutil>=2.7.0->arrow>=0.15.6->proj)
  Using cached six-1.17.0-py2.py3-none-any.whl.metadata (1.7 kB)
Downloading proj-0.2.0-py2.py3-none-any.whl (8.6 kB)
Using cached arrow-1.3.0-py3-none-any.whl (66 kB)
Downloading click-8.2.0-py3-none-any.whl (102 kB)
Using cached python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB)
Using cached types_python_dateutil-2.9.0.20241206-py3-none-any.whl (14 kB)
Using cached colorama-0.4.6-py2.py3-none-any.whl (25 kB)
Using cached six-1.17.0-py2.py3-none-any.whl (11 kB)
Installing collected packages: types-python-dateutil, six, colorama, python-dateutil, click, arrow, proj
Successfully installed arrow-1.3.0 click-8.2.0 colorama-0.4.6 proj-0.2.0 python-dateutil-2.9.0.post0 six-1.17.0 types-python-dateutil-2.9.0.20241206

(env_orange_pyarrow) PS X:\GitHub\Windows-DevRel\Tools\ML-tests> pip install pyproj
Collecting pyproj
  Using cached pyproj-3.7.1.tar.gz (226 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... error
  error: subprocess-exited-with-error

  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [31 lines of output]
      Traceback (most recent call last):
        File "X:\GitHub\Windows-DevRel\Tools\ML-tests\.temp\env_orange_pyarrow\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 353, in <module>
          main()
        File "X:\GitHub\Windows-DevRel\Tools\ML-tests\.temp\env_orange_pyarrow\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "X:\GitHub\Windows-DevRel\Tools\ML-tests\.temp\env_orange_pyarrow\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 118, in get_requires_for_build_wheel
          return hook(config_settings)
                 ^^^^^^^^^^^^^^^^^^^^^
        File "C:\temp\pip-build-env-24z3qlh2\overlay\Lib\site-packages\setuptools\build_meta.py", line 331, in get_requires_for_build_wheel
          return self._get_build_requires(config_settings, requirements=[])
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "C:\temp\pip-build-env-24z3qlh2\overlay\Lib\site-packages\setuptools\build_meta.py", line 301, in _get_build_requires
          self.run_setup()
        File "C:\temp\pip-build-env-24z3qlh2\overlay\Lib\site-packages\setuptools\build_meta.py", line 317, in run_setup
          exec(code, locals())
        File "<string>", line 248, in <module>
        File "<string>", line 188, in get_extension_modules
        File "<string>", line 43, in get_proj_version
        File "X:\Python\Python312-arm64\Lib\subprocess.py", line 468, in check_output
          return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "X:\Python\Python312-arm64\Lib\subprocess.py", line 550, in run
          with Popen(*popenargs, **kwargs) as process:
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "X:\Python\Python312-arm64\Lib\subprocess.py", line 1028, in __init__
          self._execute_child(args, executable, preexec_fn, close_fds,
        File "X:\Python\Python312-arm64\Lib\subprocess.py", line 1540, in _execute_child
          hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      FileNotFoundError: [WinError 2] The system cannot find the file specified
      [end of output]

Environment Information

  • pyproj version - 3.7.1
  • PROJ version - 0.2.0
  • Python version 3.12.9 (tags/v3.12.9:fdb8142, Feb 4 2025, 15:37:22) [MSC v.1942 64 bit (ARM64)]
  • Operation System Information Windows-11-10.0.26120-SP0

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions