Build Windows Wheel in MSYS2 UCRT64 Environment? #1721
-
Our Cython project makes heavy use of C99 complex. The native Windows environment with MSVC, however, uses the struct-based _Dcomplex and friends types which are binary compatible, but not source compatible, with C's complex. Cython doesn't seem to automatically convert its generated code to the Windows style complex types. My question is: is it possible to get cibuildwheel to run the make wheel step in the MSYS2 UCRT64 environment? [In this environment, C complex is handled normally (using gcc) yet the resulting binaries are still native windows compatible.] If so, how do you do it? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
To answer my own question, it is possible. The key is to first set up the MSYS2 environment with UCRT64 system. Using UCRT64 builds real Windows libraries (that can be used inside or outside of the MSYS environment). Then in the next block, the
Complete example can be found in this repo: https://github.com/scott-guthridge/libvna/tree/master |
Beta Was this translation helpful? Give feedback.
To answer my own question, it is possible. The key is to first set up the MSYS2 environment with UCRT64 system. Using UCRT64 builds real Windows libraries (that can be used inside or outside of the MSYS environment). Then in the next block, the
shell: msys2 {0}
line starts a shell where you can do the build in a POSIX-like environment.