Skip to content

Copy progress from #749 (cibuildwheel for Windows) #1340

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 13 commits into
base: main
Choose a base branch
from

Conversation

RubenChM
Copy link

Description

Trying to make the wheels for Windows using the progress made in #749

Motivation and Context

delvewheel has improved over the four year this was lasty tried so want to see if it possible now.
Resolves: #1336

How Has This Been Tested?

Renabling the CI test for building Windows while disabling the ones in mac and ubuntu for the moment.

Checklist:

@joaander
Copy link
Member

Thanks for working on this!

@joaander
Copy link
Member

It appears that the build succeeded! Could you please download the artifact, install it, and confirm that it works on your system.

@RubenChM
Copy link
Author

I tested the repaired wheel for python 3.9 and it passed all the tests.

I reverted the changes to the CI so now it makes the tests for all versions.

@joaander
Copy link
Member

joaander commented Jul 16, 2025

Could you rebase your branch off the current HEAD of main? The GitHub files changed view is not properly showing the diff from the current main to your fixes, making it difficult for me to tell what you actually changed.

Strike that. It was a bug in the new beta GitHub pull request view that was not showing me all the changes.

Copy link
Member

@joaander joaander left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for working on this! I have a few questions and suggestions.


# Install a modern version of CMake for compatibility with modern Visual Studio
pip install cmake
pip install "cmake<3.31.3"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why can we not use the latest version?

Suggested change
pip install "cmake<3.31.3"
pip install "cmake==4.0.3"

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The TBB build was failing with 4.0.3 even though it said that the minimun was 3.5:

 + powershell .github/workflows/cibuildwheel-before-build.ps1 D:\a\freud\freud
  Collecting cmake
    Downloading cmake-4.0.3-py3-none-win_amd64.whl.metadata (6.3 kB)
  Downloading cmake-4.0.3-py3-none-win_amd64.whl (36.9 MB)
     ---------------------------------------- 36.9/36.9 MB 55.9 MB/s eta 0:00:00
  Installing collected packages: cmake
  Successfully installed cmake-4.0.3
  
  
      Directory: D:\a\freud\freud\tbb
  
  
  Mode                 LastWriteTime         Length Name                                                                 
  ----                 -------------         ------ ----                                                                 
  d-----         7/10/2025   1:07 PM                build                                                                
  -- Building for: Visual Studio 17 2022
  CMake Error at CMakeLists.txt:15 (cmake_minimum_required):
    Compatibility with CMake < 3.5 has been removed from CMake.

I don't know if this is a know bug but I tried and it worked.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove this file. It is not used as no CIBW_BEFORE_TEST_ configuration is set.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove this file. It is not used as no CIBW_BEFORE_TEST_ configuration is set.

pip install delvewheel

# From https://cibuildwheel.pypa.io/en/stable/options/#repair-wheel-command
delvewheel repair --add-path "C:/Program Files (x86)/TBB/bin/" -w "${DEST_DIR}" "${WHEEL}"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do these libraries appear in the x86 (32-bit) installation location? Do these scripts incorrectly build 32-bit binaries?

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.

PyPi missing Windows wheels
2 participants