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

Add support for building aarch64 wheels #220

Open
bennuttall opened this issue May 28, 2020 · 8 comments
Open

Add support for building aarch64 wheels #220

bennuttall opened this issue May 28, 2020 · 8 comments
Assignees

Comments

@bennuttall
Copy link
Member

In order to build aarch64 wheels, we need to add the logic for separating armv6/armv7 and aarch64, and enable ABIs per architecture, i.e. armv6/armv7: cp34m, cp35m, cp37m; aarch64: cp37m.

We'll also need to set up another set of aarch64/cp37m builders and rebuild all the non-pure-python packages.

@bennuttall
Copy link
Member Author

bennuttall commented May 28, 2020

Current state of piwheels builders:

  • Jessie armv7 (symlink to armv6)
  • Stretch armv7 (symlink to armv6)
  • Buster armv7 (symlink to armv6)

Since Jessie is approaching EOL, we can drop that, but we'll need to add aarch64, which is Buster only, so we'll have the following builders:

  • Stretch armv7 (symlink to armv6)
  • Buster armv7 (symlink to armv6)
  • Buster aaarch64

And once Bullseye is out next summer:

  • Stretch armv7 (symlink to armv6)
  • Buster armv7 (symlink to armv6)
  • Buster aaarch64
  • Bullseye armv7 (symlink to armv6)
  • Bullseye aarch64

This also relies on Mythic having a 64-bit OS

@carlosperate
Copy link

In the meantime, can't aarch64 symlink to armv7/6? Shouldn't the wheels from those platforms work in aarch64?

@bennuttall
Copy link
Member Author

No, they're not compatible.

@rkhaled0
Copy link

👋 everyone, any updates ?

@bennuttall
Copy link
Member Author

Not yet

@leigh-johnson
Copy link

Hey @bennuttall, thank you so much for all the work you've done on PiWheels! I'm wondering if you're looking for help with this?

A bit of background: I build armhf/aarch64 wheels for scientific computing and ML/deep learning.

I just picked up one of these to run as a CI/CD matrix, and I'd be interested in running my own PiWheels instance. Happy to contribute to this work.

EzYDvqPUUAAPhGU (1)

@bennuttall
Copy link
Member Author

Instructions for setting up your own piwheels instance are provided in the docs: https://piwheels.readthedocs.io/en/latest/

To modify it so it only builds aarch64 wheels should be fairly trivial. To modify it to queue up builds correctly for armv6/7 and aarch64 is more complex.

Give it a try and let us know if you have any issues you can't get past. Probably best by email - ben [at] bennuttall.com

@bsimmo
Copy link

bsimmo commented Aug 12, 2024

How's this going

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants