[BUG] Native binary (Bun/JSC) aborts on ARM64 Linux with 64K page size kernels
Status Fixed / completed
Maintainer reply ✓ Yes — ant-kurt
Activity 12 comments · opened Feb 14, 2026 · closed Mar 25, 2026
💡 Likely answer: A maintainer (ant-kurt, collaborator)
responded on this thread — see the highlighted reply below.
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
The Claude Code native binary aborts immediately on ARM64 Linux systems
with 64K page size kernels (common on HPC/Cray systems, some server distros).
The binary is built on Bun, which uses JavaScriptCore (JSC). JSC's JIT
compiler and memory allocator assume 4K pages and call abort() during
VM initialization on 64K page kernels.
What Should Happen?
Install should complete
Error Messages/Logs
bash: line 150: 31214 Aborted "$binary_path" install ${TARGET:+"$TARGET"}
Steps to Reproduce
Run the native installer on any ARM64 Linux system with 64K pages:
curl -fsSL https://claude.ai/install.sh | bash
Setting up Claude Code...
bash: line 150: 31214 Aborted "$binary_path" install ${TARGET:+"$TARGET"}
Claude Model
None
Is this a regression?
No, this never worked
Last Working Version
_No response_
Claude Code Version
na
Platform
Anthropic API
Operating System
Ubuntu/Debian Linux
Terminal/Shell
Xterm
Additional Information
_No response_
12 Comments
Found 2 possible duplicate issues:
This issue will be automatically closed as a duplicate in 3 days.
🤖 Generated with Claude Code
Huh, we do have a Linux ARM64 binary - see manifest https://storage.googleapis.com/claude-code-dist-86c565f3-f756-42ad-8dfa-d59b1c096819/claude-code-releases/2.1.42/manifest.json
Can you share what distro you're using? Can you try directly downloading the binary (from https://storage.googleapis.com/claude-code-dist-86c565f3-f756-42ad-8dfa-d59b1c096819/claude-code-releases/2.1.42/linux-arm64/claude) and see if that runs properly - which would indicate an issue with the install.sh script?
I have the same issue, but this doesnt work
I've opened the same issue with more details https://github.com/anthropics/claude-code/issues/26509
This error appears as claude starts propose to use native installer (2.1.34 I think)
Updated after some more debugging - notes from claude code:
@ant-kurt that's understood :) The original poster described the root cause already with precision.
JSC's JIT assumes 4K pages and calls abort() during VM initialization on 64K page kernels.
This is the cause, also on my system. After debugging this Claude crash with (a working version of) Claude, a high-level conclusion is (emphasis mine):
-----
A bit of background.
Here is the check that fails:
https://github.com/WebKit/WebKit/blob/120aa0417b02b75593c2789d39fb4cb41502fb91/Source/WTF/wtf/PageBlock.cpp#L65
Why don't we see the error message? I did let Claude debug the crash with strace and with a crash dump and with gdb.
Relevant output:
Claude also says that
I followed up on that, and ignorantly doing
USE(64KB_PAGE_BLOCK)is _not_ viable pathway for now, because this disables the JIT and has other significant side effects:Btw, Claude's debugging results from my test environment (noice):
And there's that wonderful code comment added by this commit:
https://github.com/WebKit/WebKit/commit/83378c8f54e5118fd424bdcbb7ed7ec1d4908e76
@ant-kurt is the new information helpful?
FYI, https://github.com/oven-sh/bun/issues/6241, using bun from latest CI artifacts (e.g. https://buildkite.com/bun/bun/builds/41546/steps/canvas?sid=019d1e54-9fcd-47b7-9698-36425e5930c8) works now.
Can you confirm if this is working for you with the Claude Code native binary 2.1.83, published today?
v2.1.83 works! I've tested now
Thanks for confirming - marking this one as resolved!
This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.