Skip to content

Conversation

@finnagin
Copy link
Contributor

@finnagin finnagin commented Jun 5, 2025

This would add wheel builds and run tests for arm64 Windows.

Closes #232

@finnagin
Copy link
Contributor Author

finnagin commented Jun 5, 2025

So, the wheel build workflow builds correctly however, there seems to be an odd error for both Windows 3.13 test workflows (both x64 and arm64) and I don't believe it is related to my changes here as I ran the tests on the master branch in my fork and got the same error again for x64 windows without any changes.

Specifically, if you look at the logs they both seem to be due to something seemingly building for free-threaded python despite this not being a free-threaded build? And it only happens in the build step for the tests workflow, not the wheel build workflow, I'm guessing due to the wheel build using CIBuildWheel to build rather than running pip install ..
x64 error:

"C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.43.34808\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DCARES_HAVE_WINSOCK2_H=1 -DCARES_HAVE_WS2TCPIP_H=1 -DCARES_HAVE_WINDOWS_H=1 -DCARES_THREADS=1 -DCARES_STATICLIB=1 -Ideps\build-config\include -Ideps\c-ares\src\lib\include -Ideps\c-ares\src\lib -Ideps\c-ares\include -IC:\hostedtoolcache\windows\Python\3.13.4\x64\include -IC:\hostedtoolcache\windows\Python\3.13.4\x64\Include "-IC:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.43.34808\include" "-IC:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.43.34808\ATLMFC\include" "-IC:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\cppwinrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um" /Tcbuild\temp.win-amd64-cpython-313\Release\_cares.c /Fobuild\temp.win-amd64-cpython-313\Release\build\temp.win-amd64-cpython-313\Release\_cares.obj
  _cares.c
  C:\hostedtoolcache\windows\Python\3.13.4\x64\include\Python.h(51): fatal error C1189: #error:  "The limited API is not currently supported in the free-threaded build"
  error: command 'C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\MSVC\\14.43.34808\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2
  [end of output]

arm64 error:

"C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.43.34808\bin\HostARM64\ARM64\link.exe" /nologo /INCREMENTAL:NO /LTCG /DLL /MANIFEST:EMBED,ID=2 /MANIFESTUAC:NO /LIBPATH:src/c/libffi_arm64 /LIBPATH:C:\hostedtoolcache\windows\Python\3.13.4\arm64\libs /LIBPATH:C:\hostedtoolcache\windows\Python\3.13.4\arm64 /LIBPATH:C:\hostedtoolcache\windows\Python\3.13.4\arm64\PCbuild\arm64 "/LIBPATH:C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.43.34808\ATLMFC\lib\ARM64" "/LIBPATH:C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.43.34808\lib\ARM64" "/LIBPATH:C:\Program Files (x86)\Windows Kits\10\lib\10.0.26100.0\ucrt\arm64" "/LIBPATH:C:\Program Files (x86)\Windows Kits\10\\lib\10.0.26100.0\\um\arm64" ffi.lib /EXPORT:PyInit__cffi_backend build\temp.win-arm64-cpython-313\Release\src\c\_cffi_backend.obj /OUT:build\lib.win-arm64-cpython-313\_cffi_backend.cp313-win_arm64.pyd /IMPLIB:build\temp.win-arm64-cpython-313\Release\src\c\_cffi_backend.cp313-win_arm64.lib
    LINK : fatal error LNK1104: cannot open file 'python313t.lib'
    error: command 'C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\MSVC\\14.43.34808\\bin\\HostARM64\\ARM64\\link.exe' failed with exit code 1104

@saghul
Copy link
Owner

saghul commented Jun 5, 2025

Very weird!

@bdraco do you have any ideas?

@saghul
Copy link
Owner

saghul commented Jun 6, 2025

Can you please rebase? I've added a fix which pins the Python version on Windows to 3.13.3 which doesn't have the bug.

@finnagin
Copy link
Contributor Author

finnagin commented Jun 6, 2025

Can you please rebase? I've added a fix which pins the Python version on Windows to 3.13.3 which doesn't have the bug.

Sure thing!

@bdraco
Copy link
Collaborator

bdraco commented Jun 6, 2025

I started the CI. Was it still failing? nevermind, I see the note above

@saghul saghul merged commit c4131d5 into saghul:master Jun 12, 2025
30 checks passed
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.

Add support for arm64 windows wheels

3 participants