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

Pregenerate bindings for riscv64 #714

Closed
Xeonacid opened this issue Feb 28, 2025 · 6 comments
Closed

Pregenerate bindings for riscv64 #714

Xeonacid opened this issue Feb 28, 2025 · 6 comments

Comments

@Xeonacid
Copy link

Problem:

Please consider pregenerating bindings for riscv64 like what have done for x86_64 and aarch64, which would save time for Linux distros like Arch Linux RISC-V. Thanks!

Relevant details

System information: for linux, below info cae collected by running uname -srvmp

  • CPU architecture: riscv64
  • OS: Linux
@justsmth
Copy link
Contributor

justsmth commented Mar 6, 2025

Hello! Thanks for submitting the issue.

Is the target that you're most interested in riscv64gc-unknown-linux-gnu?

@Xeonacid
Copy link
Author

Xeonacid commented Mar 7, 2025

Is the target that you're most interested in riscv64gc-unknown-linux-gnu?

Yeah!

@justsmth
Copy link
Contributor

We've just released aws-lc-rs v1.12.6 🎉, which we believe addresses the problem above. This issue will now be closed.

Feel free to re-open this issue, or create a new one, if you continue having problems after upgrading. Thanks for your help w/ improving our library!

@Xeonacid
Copy link
Author

We've just released aws-lc-rs v1.12.6 🎉, which we believe addresses the problem above. This issue will now be closed.

Feel free to re-open this issue, or create a new one, if you continue having problems after upgrading. Thanks for your help w/ improving our library!

Thanks for the awesome work!

There seems to be some work for the aws-lc-sys crate also. Building packages using rustls currently fails without cmake and clang:

error: failed to run custom build command for `aws-lc-sys v0.27.0`

Caused by:
  process didn't exit successfully: `/build/rustup/src/rustup-1.28.1/target/release/build/aws-lc-sys-4c15bd3d3000abde/build-script-main` (exit status: 101)
  --- stdout
  cargo:rerun-if-env-changed=AWS_LC_SYS_NO_PREFIX
  cargo:rerun-if-env-changed=AWS_LC_SYS_PREGENERATING_BINDINGS
  cargo:rerun-if-env-changed=AWS_LC_SYS_EXTERNAL_BINDGEN
  cargo:rerun-if-env-changed=AWS_LC_SYS_NO_ASM
  cargo:rerun-if-env-changed=AWS_LC_SYS_CFLAGS
  cargo:rerun-if-env-changed=AWS_LC_SYS_PREBUILT_NASM
  cargo:rerun-if-env-changed=AWS_LC_SYS_C_STD
  cargo:rustc-cfg=riscv64gc_unknown_linux_gnu
  cargo:rerun-if-env-changed=AWS_LC_SYS_CMAKE_BUILDER
  cargo:rerun-if-env-changed=AWS_LC_SYS_STATIC
  default_for Target: 'riscv64gc-unknown-linux-gnu'
  cargo:rerun-if-env-changed=AWS_LC_SYS_STATIC
  cargo:rerun-if-env-changed=CMAKE

  --- stderr
  Missing dependency: cmake

  thread 'main' panicked at /build/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aws-lc-sys-0.27.0/builder/main.rs:382:40:
  called `Result::unwrap()` on an `Err` value: "Required build dependency is missing. Halting build."
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...

Could the team please do generation for aws-lc-sys? Thank you very much!

BTW GitHub says I don't have the permission to reopen the issue. Could anyone do me the favor to reopen it? Or should I create a new issue?

@justsmth
Copy link
Contributor

Hello! Sorry you're still having trouble with the build.

In this case, the issue is not with the bindings. What's needed is CMake:

  Missing dependency: cmake

We have some guidance on installing CMake here. CMake is provided as a package in most Linux distributions. It can also be built from source fairly easily.

If you'd like, feel free to open an issue in our repo regarding removing our dependency on CMake for this, or other, platforms. (We would like to expand the number of platforms that don't require CMake, but we've not announced a timeline for when this might be available.)

@Xeonacid
Copy link
Author

If you'd like, feel free to open an issue in our repo regarding removing our dependency on CMake for this, or other, platforms. (We would like to expand the number of platforms that don't require CMake, but we've not announced a timeline for when this might be available.)

Thanks for the kind reply! Yeah that's exactly what I want. Will fill another issue then.

"binding" for my earlier post actually refers to the architecture-dependent files in aws-lc-sys/{src,symbols}. The "binding" word comes from its README. Sorry for any misunderstanding.😖

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

2 participants