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
fix(release): build Linux binaries as static musl to restore glibc 2.35 compatibility
Switches Linux release and CI builds from `*-unknown-linux-gnu` to
`*-unknown-linux-musl` so the published binaries are fully statically
linked and have no glibc dependency. Resolves the GLIBC_2.38/2.39 errors
reported on Ubuntu 22.04 (jammy, glibc 2.35).
- .goreleaser-linux.yaml: target the musl triples
- .github/workflows/release.yml: install musl-tools + the messense
aarch64-unknown-linux-musl cross toolchain, set per-target CC and
linker env vars, build with `-C target-feature=+crt-static`
- .github/workflows/ci.yml: mirror the release setup; build x86_64 and
aarch64 musl sequentially and verify each binary with `file` (statically
linked) and `ldd` (not a dynamic executable)
- docs/ARCHITECTURE.md, docs/TROUBLESHOOTING.md: document the static
linking and the glibc upgrade guidance for affected users
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: docs/TROUBLESHOOTING.md
+26Lines changed: 26 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,6 +2,32 @@
2
2
3
3
Common issues and solutions for Pup CLI.
4
4
5
+
## Compatibility Issues
6
+
7
+
### GLIBC version error on Linux
8
+
9
+
**Symptoms:**
10
+
```
11
+
pup: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by pup)
12
+
pup: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.39' not found (required by pup)
13
+
```
14
+
15
+
**Solution:**
16
+
Upgrade to **pup 0.58.4 or later**. Starting with version 0.58.4, Linux binaries are statically linked with musl libc and have **no glibc dependency**.
17
+
18
+
```bash
19
+
# Update to the latest version
20
+
brew upgrade pup
21
+
22
+
# Or download the latest release manually
23
+
curl -L https://github.com/DataDog/pup/releases/latest/download/pup_Linux_x86_64.tar.gz | tar xz
24
+
```
25
+
26
+
**Technical details:**
27
+
- Versions before 0.58.4 were dynamically linked and required glibc ≥ 2.38
28
+
- Versions 0.58.4+ are static musl binaries that work on any Linux distribution
29
+
- No action required after upgrading — the new binary "just works"
0 commit comments