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

Build manylinux aarch64 wheels #43

Open
exarkun opened this issue Jan 14, 2022 · 1 comment
Open

Build manylinux aarch64 wheels #43

exarkun opened this issue Jan 14, 2022 · 1 comment

Comments

@exarkun
Copy link
Contributor

exarkun commented Jan 14, 2022

CircleCI offers ARMv7 executors. We could use these to build aarch64 architecture manylinux wheels.

This might be as simple as running our build-wheels command in a job that chooses this executor. However, according to https://github.com/pypa/manylinux "Building manylinux-compatible wheels is not trivial" and that project provides Docker images for building these wheels. The page goes on to say "as a general rule, binaries built on one Linux distro will only work on other Linux distros that are the same age or newer". It is not clear if this is the only non-trivial consideration or if there are others.

Since we cannot use that project's Docker images directly on CircleCI's ARMv7 executors we should investigate whether the wheels built on the system that system are actually "good" wheels or not. If not, we may be able to run Docker ourselves on those executors and use the pypa/manylinux Docker images that way.

If the wheels built directly on the ARMv7 executor are good we should also look at the images that CircleCI offers and determine which offers the widest range of compatibility (without being unreasonably difficult to use). We will also have to take care to pay attention to CircleCI's image deprecation policy. My understanding is that CircleCI will eventually remove older images so over time we will have to adjust our configuration to follow those changes.

@exarkun
Copy link
Contributor Author

exarkun commented Jan 14, 2022

I had tried to add a job for building these to #41 but because of the above-mentioned complexities I removed it in 5a505ec. Perhaps that diff will offer a head start to anyone who tries to resolve this issue.

@exarkun exarkun mentioned this issue Jan 14, 2022
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

No branches or pull requests

1 participant