You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
cargo oxide doctor cannot diagnose missing CUDA headers because cuda-bindings panics first #87
On a machine without CUDA headers installed, cargo oxide doctor cannot reach the doctor checks. The cargo alias first builds cargo-oxide, which pulls cuda-bindings; that build script falls through to bindgen and panics when cuda.h is missing.
Repro
From a fresh clone on a host without /usr/local/cuda/include/cuda.h:
cargo oxide doctor
Observed failure:
warning: cuda-bindings@0.1.0: cuda-bindings: Could not read cuda.h at /usr/local/cuda/include/cuda.h: No such file or directory
wrapper.h:1:10: fatal error: 'cuda.h' file not found
thread 'main' panicked at crates/cuda-bindings/build.rs:70:10:
Unable to generate CUDA bindings: ClangDiagnostic(...)
Expected
The build script should report missing CUDA headers directly and avoid a bindgen panic. Related: CUDA redistributable/cross layouts may place headers under target-specific directories such as targets/x86_64-linux/include or targets/sbsa-linux/include; the build script should not hardcode a single target directory.
so cargo oxide doctor now builds and runs on a toolkit-less machine and diagnoses the missing headers itself. CI runs doctor on a toolkit-less runner to keep it that way.
Activity
fix(cuda-bindings): clean error for missing cuda.h, target-aware layout
nihalpasham commentedon Jun 12, 2026
Fixed in two halves:
so cargo oxide doctor now builds and runs on a toolkit-less machine and diagnoses the missing headers itself. CI runs doctor on a toolkit-less runner to keep it that way.
feat(cargo-oxide): drop cuda-core/cuda-host so the subcommand builds …
feat(cargo-oxide): teach doctor to diagnose missing cuda.h and absent…
ci: drop the CUDA toolkit from the cargo-oxide unit-test job
doc: Add DSL API Documentation (NVIDIA#87)