Rust-GPU / Rust-GPU/rust-gpu.github.io

Guide doesn't seem to work

Open
#90 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
MDX
Stars
16
Forks
8
PR merge metrics
No merged PRs in 30d

Description

Apologies in advance for a mess of an issue, I'm struggling to get started with rust-gpu and running in to different issues with the docs.

I tried to follow https://rust-gpu.github.io/rust-gpu/book/writing-shader-crates.html but something seems off there and I'm not sure what, been struggling with it for hours.

First error I get is

error: failed to run custom build command for `rustc_codegen_spirv v0.9.0`

Caused by:
  process didn't exit successfully: `[path]/builder/target/debug/build/rustc_codegen_spirv-ffa44511fcb54869/build-script-build` (exit status: 1)
  --- stdout
  cargo:rerun-if-env-changed=RUSTGPU_SKIP_TOOLCHAIN_CHECK

  --- stderr
  error: wrong toolchain detected (found commit hash `be19eda0dc4c22c5cf5f1b48fd163acf9bd4b0a6`, expected `1a5f8bce74ee432f7cc3aa131bc3d6920e06de10`).
  Make sure your `rust-toolchain.toml` file contains the following:
  -------------
  [toolchain]
  channel = "nightly-2023-05-27"
  components = ["rust-src", "rustc-dev", "llvm-tools-preview"]
  -------------

So I updated channel to "nightly-2023-05-27" instead of the one suggested in the docs, but then I get:

error: failed to parse lock file at: [path]/builder/Cargo.lock

Caused by:
  lock file version `4` was found, but this version of Cargo does not understand this lock file, perhaps Cargo needs to be updated?

Changing Cargo.lock version to 3 gives:

error: failed to run custom build command for `builder v0.1.0 ([path]/builder)`

Caused by:
  process didn't exit successfully: `[path]/builder/target/debug/build/builder-ab9d01841427145d/build-script-build` (exit status: 1)
  --- stdout
  cargo:rerun-if-env-changed=RUSTGPU_CODEGEN_ARGS
  cargo:rerun-if-env-changed=RUSTGPU_RUSTFLAGS

  --- stderr
  error: failed to parse lock file at: [path]/shader/Cargo.lock

  Caused by:
    lock file version `4` was found, but this version of Cargo does not understand this lock file, perhaps Cargo needs to be updated?
  Error: BuildFailed

I tried to play with some more settings, and kept bumping in to

  error: missing libm intrinsic _RNvMNtNtNtCsbtJY5FUAdnQ_4libm4math7support3bigNtB2_4u2566signed, which is math::support::big::u256::signed

  error: missing libm intrinsic _RNvXs2_NtNtNtCsbtJY5FUAdnQ_4libm4math7support3bigNtB5_4u256NtNtNtCsktVOBji75Go_4core3ops5arith3Add3add, which is <math::support::big::u256 as core::ops::Add>::add

  error: missing libm intrinsic _RNvXs3_NtNtNtCsbtJY5FUAdnQ_4libm4math7support3bigNtB5_4u256INtNtNtCsktVOBji75Go_4core3ops3bit3ShrmE3shr, which is <math::support::big::u256 as core::ops::Shr<u32>>::shr

  error: missing libm intrinsic _RNvXs4_NtNtNtCsbtJY5FUAdnQ_4libm4math7support3bigoNtNtB7_10int_traits4HInt5widen, which is math::support::big::<impl math::support::int_traits::HInt for u128>::widen

  error: missing libm intrinsic _RNvXs4_NtNtNtCsbtJY5FUAdnQ_4libm4math7support3bigoNtNtB7_10int_traits4HInt10zero_widen, which is math::support::big::<impl math::support::int_traits::HInt for u128>::zero_widen
...

Again, apologies for this mess. I honestly can't figure out what the root cause is and how to get around it.

Any pointers?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the writing-shader-crates guide at the linked URL and compare its instructions with the reported rustc_codegen_spirv toolchain and Cargo.lock errors. Check which documented setup produces the failures; done means the guide gives a reproducible setup that avoids the reported errors or clearly documents the required versions and limitations.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.