pyg4ometry icon indicating copy to clipboard operation
pyg4ometry copied to clipboard

Support for linux/arm64 wheels

Open jbeirer opened this issue 8 months ago • 5 comments

Hi @gipert and @stewartboogert,

I see there are no wheels being built for linux/arm64, would it be possible to add those?

Currently my linux/arm64 docker builds are failing as a consequence, and it would be good if I could avoid messing with the dependencies.

Thanks!

jbeirer avatar Mar 12 '25 09:03 jbeirer

Maybe something like https://github.com/g4edge/pyg4ometry/pull/244 is already sufficient?

jbeirer avatar Mar 12 '25 10:03 jbeirer

Maybe something like https://github.com/g4edge/pyg4ometry/pull/244 is already sufficient?

quite certainly not. pyg4ometry uses a custom docker manylinux base image with dependencies, that would have to be built (and pushed) for arm64 beforehand.

see also https://github.com/g4edge/pyg4ometry/blob/5135858be36c5fe84969ff0355ec89b62b4e2f08/pyproject.toml#L158-L164

I have never done that personally (and I don't have access to do so), but it certainly is not as easy as just changing some lines in the CI job here 🫤

ManuelHu avatar Mar 12 '25 10:03 ManuelHu

Hi @jbeirer, as @ManuelHu mentioned we would need to build and deploy a new base image for cbuildwheel. I wonder if adding arm64 here:

https://github.com/g4edge/dockerfiles/blob/e62683473483c731afe1def8f73edf3d23d884bd/bin/build-and-deploy.sh#L11

would be enough. If yes, we would then need to include the image in this list:

https://github.com/g4edge/pyg4ometry/blob/5135858be36c5fe84969ff0355ec89b62b4e2f08/pyproject.toml#L159

gipert avatar Mar 12 '25 10:03 gipert

Thanks both, that would be great! Let me know if I can help with anything :)

jbeirer avatar Mar 12 '25 11:03 jbeirer

I wonder if adding arm64 here

it should be aarch64, but yes, that (hopefully) might just work

ManuelHu avatar Mar 12 '25 11:03 ManuelHu