Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions HOW-TO-FIX.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
## Troubleshooting

This page addresses common issues and provides solutions to help you get started or resolve problems.

### 1. CUDA Build Errors

**Problem:** CUDA wheel build failed with the following errors:
```
/usr/include/x86_64-linux-gnu/bits/stdlib.h(37): error: linkage specification is incompatible with previous "realpath" (declared at line 940 of /usr/include/stdlib.h)
realpath (const char *__restrict __name, char * __restrict const __attribute__ ((__pass_object_size__ (1 > 1))) __resolved) noexcept (true)
^

/usr/include/x86_64-linux-gnu/bits/stdlib.h(72): error: linkage specification is incompatible with previous "ptsname_r" (declared at line 1134 of /usr/include/stdlib.h)
ptsname_r (int __fd, char * const __attribute__ ((__pass_object_size__ (1 > 1))) __buf, size_t __buflen) noexcept (true)
^

/usr/include/x86_64-linux-gnu/bits/stdlib.h(91): error: linkage specification is incompatible with previous "wctomb" (declared at line 1069 of /usr/include/stdlib.h)
wctomb (char * const __attribute__ ((__pass_object_size__ (1 > 1))) __s, wchar_t __wchar) noexcept (true)
^
...
```

**Solution:**
Reported error messages are connected to system headers in the /usr/include/ directory and GLIBC version.

While a direct compatibility matrix for NVCC and GLIBC was elusive try to use the cuDNN compatibility table as a
reference: [Linux versions for cuDNN](https://docs.nvidia.com/deeplearning/cudnn/backend/latest/reference/support-matrix.html#linux)

Building CUDA requires a compatible machine and GLIBC version. For instance, try building on Ubuntu 24.04, which uses
GLIBC 2.39, as this combination is documented as supported.
17 changes: 10 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,12 +65,12 @@ build:linux --repo_env=SYSROOT_DIST=linux_glibc_2_31

Supported versions of LLVM

| Version | Execution OS |
|---------|---------------------------------------|
| 18 | Linux x86_64 / aarch64, macOS aarch64 |
| 19 | Linux x86_64 |
| 20 | Linux x86_64 / aarch64 |
| 21 | Linux x86_64 |
| Version | Linux x86_64 | Linux aarch64 | macOS aarch64 |
|---------|--------------|---------------|---------------|
| 18 | x | x | x |
| 19 | x | | |
| 20 | x | x | |
| 21 | x | | |

Available sysroots

Expand Down Expand Up @@ -132,4 +132,7 @@ and allows build for such targets:
[Prepare SDK](cc/sysroots/darwin_aarch64/README.md) before run the following command.

`bazel build //cc/tests/cpu/... --platforms=//common:macos_aarch64`
-->
-->

## Troubleshooting
Encountering issues? Try to find decision on [How To Fix](HOW-TO-FIX.md) page.