Request: publish linux-ppc64le SEA binary (breaks POWER8+ / ppc64le users)
Summary
Starting in v2.1.113, @anthropic-ai/claude-code ships as a dispatcher package that resolves to a platform-specific SEA (Single Executable Application) binary via optionalDependencies. The supported platform list is hardcoded in install.cjs and cli-wrapper.cjs:
darwin-arm64,darwin-x64linux-x64,linux-x64-musllinux-arm64,linux-arm64-muslwin32-x64,win32-arm64
No linux-ppc64le variant exists. Users on IBM POWER architectures (POWER8, POWER9, POWER10, POWER11 — all of which run mainstream Linux distributions and a modern Node.js) get:
$ claude --version
Error: claude native binary not installed.
...
Last working version: 2.1.112
Pinning to v2.1.112 (the last pure-JavaScript release) works fine on ppc64le. v2.1.112 is now two patch versions behind and will keep drifting further.
Why ppc64le is a legitimate target
- IBM Cloud Power Systems Virtual Servers (production ppc64le hosts)
- Financial services / HPC shops running POWER for inference and data workloads
- The vLLM project recently added ppc64le CPU backend support (vllm-project/vllm#37586) — demand for AI tooling on POWER is real and growing
s390x(another IBM arch) is already supported by vLLM and increasingly by AI tooling; parity for ppc64le is reasonable
I've been running Claude Code on an IBM POWER S824 (16 cores / 128 SMT threads, 512 GB RAM, Ubuntu 20.04) for several months without issues — the codebase is platform-neutral Node.js. The only blocker is the SEA dispatcher refusing to resolve a binary for my arch.
Proposed fix
Publish an @anthropic-ai/claude-code-linux-ppc64le companion package alongside the existing linux-x64 and linux-arm64 binaries, and add the entry to the PLATFORMS map in install.cjs / cli-wrapper.cjs:
'linux-ppc64': { pkg: PACKAGE_PREFIX + '-linux-ppc64le', bin: BINARY_NAME },
(Note: Node's os.arch() returns ppc64 on ppc64le Linux — the platform key would be linux-ppc64 on the consumer side even though the package name uses ppc64le. Same pattern as @img/sharp.)
Alternative: restore a pure-JS fallback path
If shipping ppc64le SEA binaries isn't on the roadmap, keeping cli.js as a pure-JS entrypoint (as in v2.1.112 and earlier) would let any platform with Node.js ≥ 18 keep running Claude Code without needing a platform-specific binary at all. That's what worked fine for the first two years of the product.
Environment
- OS: Ubuntu 20.04 LTS on ppc64le
- Node: v22.22.2 (built from source on POWER8)
- CPU: IBM POWER8 S824, 128 threads
- Tested:
@anthropic-ai/claude-code@2.1.112— works.@2.1.113through@2.1.114— fails withclaude native binary not installed.
Thanks for considering.
This issue has 6 comments on GitHub. Read the full discussion on GitHub ↗