io-uring icon indicating copy to clipboard operation
io-uring copied to clipboard

compile_error on s390x

Open cboltz opened this issue 7 months ago • 4 comments

Building cosmic-files (1.0.0~alpha7) on openSUSE Tumbleweed for s390x fails at the bundled io-uring 0.7.4 with

[ 1843s]    Compiling zbus_names v3.0.0
[ 1864s] error: The prebuilt `sys.rs` may not be compatible with your target,
[ 1864s]        please use bindgen feature to generate new `sys.rs` of your arch
[ 1864s]        or use `--cfg=io_uring_skip_arch_check` to skip the check.
[ 1864s]   --> /home/abuild/rpmbuild/BUILD/cosmic-files-1.0.0_alpha7+0-build/cosmic-files-1.0.0~alpha7+0/vendor/io-uring-0.7.4/src/sys/mod.rs:23:1

This looks similar to https://github.com/tokio-rs/io-uring/issues/307 - except that it's for another architecture.

Can you please add support for s390x?

BTW: If you need access to a s390x VM for testing, you can get one for 90 days in the LinuxOne Community Cloud at https://linuxone.cloud.marist.edu/ (permanent VMs are also available, details on request).

cboltz avatar May 10 '25 16:05 cboltz

I am willing to accept any tested arch within this release, (to easy packaging). but since I don't think I have the energy to take on the maintenance of multiple arch, next release will consider using linux-raw-sys crate.

I actually suggest you specify your own sys.rs file using --cfg=io_uring_use_own_sys + IO_URING_OWN_SYS_BINDING=$FILE. this is not a hack, but an exit I designed for niche platforms. I know people who use this option in production.

quininer avatar May 11 '25 01:05 quininer

@cboltz You should consider my crate, based on liburing here: https://github.com/cmazakas/liburing

It wraps the liburing core with a custom Rust layer using bindgen. From what I can tell, liburing actually compiles fine on s390x and from there, you should be able to perfectly configure bindgen yourself if you need to.

You can see how to manually compile the crate with a custom compiler here: https://github.com/cmazakas/liburing/blob/master/.github/workflows/ci.yml#L226-L229

cmazakas avatar May 23 '25 21:05 cmazakas

@cmazakas I'm sure you realize that's rude. You can make sales pitches any way you like, but please don't comment under other repos all time. It's a spam for the maintainers (aka me).

quininer avatar May 24 '25 01:05 quininer

You should consider my crate as an actively maintained alternative you can recommend users!

cmazakas avatar May 24 '25 13:05 cmazakas