Point the build docs at the glibc check script
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013kj58Jugkic783b8ZrtTVZ
This commit is contained in:
+12
-4
@@ -161,14 +161,22 @@ on a newer userland still fails to load on an older one. A JetPack or Ubuntu
|
|||||||
upgrade applied to one unit and not the other reintroduces the problem, silently
|
upgrade applied to one unit and not the other reintroduces the problem, silently
|
||||||
and only at runtime. **Upgrade both, or neither.**
|
and only at runtime. **Upgrade both, or neither.**
|
||||||
|
|
||||||
The check that catches drift between them:
|
The check that catches drift between them is `scripts/check-glibc.sh` in each
|
||||||
|
service repo:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
objdump -T <binary> | grep -o 'GLIBC_[0-9.]*' | sort -Vu | tail -1
|
scripts/check-glibc.sh target/release/svc-nav # ceiling defaults to 2.35
|
||||||
```
|
```
|
||||||
|
|
||||||
It detects, it does not fix — its job is to fail the build rather than let a bad
|
| Exit | Meaning |
|
||||||
binary reach the car, and to name the symbol that caused it.
|
|---|---|
|
||||||
|
| 0 | Highest referenced version is at or below the ceiling |
|
||||||
|
| 1 | Ceiling exceeded — the responsible symbols are printed |
|
||||||
|
| 2 | **Could not check** — no `objdump`, missing binary, no versions found |
|
||||||
|
|
||||||
|
It detects, it does not fix; the fix is building on a unit whose release matches
|
||||||
|
the car's. Exit 2 is distinct on purpose: a check that cannot check must not
|
||||||
|
report success.
|
||||||
|
|
||||||
##### Cross-compiling from the workstation
|
##### Cross-compiling from the workstation
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user