-
-
Notifications
You must be signed in to change notification settings - Fork 12
Add riscv64 manylinux_2_31 #101
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
Conversation
riscv64 first get supported in auditwheel at manylinux_2_31. [1] Use Linux 5.4 as the first LTS kernel version which has a working glibc userspace support. Backport patches [2][3] to get glibc 2.31, binutils 2.40 and gcc 7.5.0 work together. Although pypa/manylinux has not added riscv64 image yet[4], adding here makes maturin-action to work, and other apps like uv can make use of that to build riscv64 releases! This may become a booster for advancing pypa/manylinux! [1] https://github.com/pypa/auditwheel/blob/8964d1e5e5daee875c324c2e0b73cc8f3e5af1c9/src/auditwheel/policy/manylinux-policy.json#L326 [2] crosstool-ng/crosstool-ng#2315 [3] crosstool-ng/crosstool-ng#2316 [4] pypa/manylinux#1426
|
Hi @messense, could you please release it to the Docker Hub? Thank you very much! |
|
Do we need to add these patches in this repo before crosstool-ng release a new version? Quoting https://crosstool-ng.github.io/docs/configuration/
|
https://github.com/rust-cross/manylinux-cross/actions/runs/14280472662 It's running, not sure whether it will succeed though. |
| TARGET_SYSROOT=/usr/riscv64-unknown-linux-gnu/riscv64-unknown-linux-gnu/sysroot/ \ | ||
| TARGET_C_INCLUDE_PATH=/usr/riscv64-unknown-linux-gnu/riscv64-unknown-linux-gnu/sysroot/usr/include/ | ||
|
|
||
| ENV CARGO_BUILD_TARGET=riscv64-unknown-linux-gnu |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
just noticed, the rust target should be riscv64gc-unknown-linux-gnu?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed in 474db27
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
just noticed, the rust target should be riscv64gc-unknown-linux-gnu?
Oops. Nice catch!
Thanks for the information. I'm new to the variable and will look into it. 🧐 |
riscv64 first get supported in auditwheel at manylinux_2_31. [1]
Use Linux 5.4 as the first LTS kernel version which has a working glibc userspace support.
Backport patches [2][3] to get glibc 2.31, binutils 2.40 and gcc 7.5.0 work together.
Although pypa/manylinux has not added riscv64 image yet[4], adding here makes maturin-action to work, and other apps like uv can make use of that to build riscv64 releases! This may become a booster for advancing pypa/manylinux!
[1] https://github.com/pypa/auditwheel/blob/8964d1e5e5daee875c324c2e0b73cc8f3e5af1c9/src/auditwheel/policy/manylinux-policy.json#L326
[2] crosstool-ng/crosstool-ng#2315
[3] crosstool-ng/crosstool-ng#2316
[4] pypa/manylinux#1426