Skip to content
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

PyPI doesn't have Apple M1 version #7

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

dgarnier
Copy link

Some changes to build locally just using "pip" on an M1 mac, and then maybe also help with the github action, but I don't know if it will work. At least this branch can by build directly by pip or poetry for use in other projects.

@dgarnier
Copy link
Author

dgarnier commented Jun 14, 2024

The issue is that the PyPI version has a "universal2" Mac package that doesn't actually have a universal binary, but an intel binary in it. I'm not sure if these changes will fix the issue, but I suspect they might. Certainly, using the supported "pip wheel" instead of "python setup.py bdist_wheel" is somewhat different. I also removed the homebrew eigen3 version and instead use the linked version in the repo, as homebrew discourages using their builds for redistribution in wheels. If this doesn't work, my suggestion is to use ciwhieelbuild. (I have other codes that use it, and it seems to work.)

@drlukeparry drlukeparry self-assigned this Jun 20, 2024
@drlukeparry drlukeparry added the enhancement New feature or request label Jun 20, 2024
@drlukeparry
Copy link
Owner

Hi Darren, Thank you for sharing these changes. I often build locally on Mac M1, so I don't encounter these redistribution issues directly, although it would be very useful to learn how to maximise compatibility specifically with the M1 platform. I will need time to try this out and understand better the implications during the build process using GitHub actions.

@drlukeparry drlukeparry modified the milestone: v0.1.4 Jun 20, 2024
@dgarnier
Copy link
Author

It is horribly complex. On my own open source project, I started using ciwheelbuild to do it all for me. Seems to work, and is both simpler and then if something goes wrong, much more complex.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

2 participants