cube-js/cube · error · Error
You are using ${process.env} platform on arm64 which is not
Error message
You are using ${process.env} platform on arm64 which is not supported by Cube Store What it means
In getTarget (rust/cubestore/js-wrapper/src/utils.ts:34), arm64 is supported only on Linux-GNU and macOS (darwin). Any other arm64 platform throws this error because no prebuilt Cube Store binary exists for it. The message interpolates ${process.env} by mistake instead of ${process.platform}.
Source
Thrown at rust/cubestore/js-wrapper/src/utils.ts:34
);
}
}
if (process.arch === 'arm64') {
switch (process.platform) {
case 'linux':
switch (detectLibc()) {
case 'gnu':
return 'aarch64-unknown-linux-gnu';
default:
throw new Error(
`You are using ${process.env} platform on arm64 with MUSL as standard library which is not supported by Cube Store, please use libc (GNU)`,
);
}
case 'darwin':
return 'aarch64-apple-darwin';
default:
throw new Error(
`You are using ${process.env} platform on arm64 which is not supported by Cube Store`,
);
}
}
throw new Error(
`You are using ${process.arch} architecture on ${process.platform} platform which is not supported by Cube Store`,
);
}
export function isCubeStoreSupported(): boolean {
if (process.arch === 'x64') {
return ['win32', 'darwin', 'linux'].includes(process.platform);
}
if (process.arch === 'arm64') {
if (process.platform === 'darwin') {
return true;View on GitHub (pinned to 7d981676b3)
Solutions
- Move the workload to a supported platform: macOS arm64, Linux arm64 (GNU), or x64 on win32/linux/darwin
- Run Cube Store as a standalone service on a supported host and connect remotely
- Build Cube Store from source on your platform and supply it via CUBEJS_CUBE_STORE_BINARY_PATH
Defensive patterns
Strategy: validation
Validate before calling
const supported = (process.arch === 'x64' && ['win32','linux','darwin'].includes(process.platform))
|| (process.arch === 'arm64' && ['linux','darwin'].includes(process.platform));
if (!supported) throw new Error(`Cube Store unsupported: ${process.arch}/${process.platform}`); Prevention
- Verify arch/platform in CI before deploying Cube with local Cube Store
- Use remote Cube Store on a supported host for exotic platforms
- Run a startup platform check instead of discovering the failure at binary-resolution time
When it happens
Trigger: process.arch === 'arm64' and process.platform is neither 'linux' nor 'darwin' when the wrapper resolves the Cube Store binary target.
Common situations: Running Cube on Windows-on-ARM, FreeBSD/arm64, or unusual emulated arm64 environments reporting a non-standard platform string.
Related errors
- You are using ${process.env} platform on arm64 with MUSL as
- Unsupported platform: ${process.platform}
- Unable to detect libc on not linux os
- You are using ${process.env} platform on x86 which is not su
- the latest release has no binary for this platform ({}-{});
AI-assisted analysis of cube-js/cube@7d981676b3 (2026-09-02).
Data as JSON: /api/errors/9ea30967272914d2.
Report an issue: GitHub.