FuelLabs/fuels-ts · error · Error

Unsupported arch ${process.arch}

Error message

Unsupported arch ${process.arch}

What it means

Thrown by `getPkgPlatform()` in the fuel-core installer when `process.arch` is not `arm64` or `x64`. The published fuel-core binaries target only aarch64 and x86_64.

Source

Thrown at internal/fuel-core/lib/shared.js:40

    arm64: 'aarch64-apple-darwin',
    x64: 'x86_64-apple-darwin',
  },
  linux: {
    arm64: 'aarch64-unknown-linux-gnu',
    x64: 'x86_64-unknown-linux-gnu',
  },
};

export const getPkgPlatform = () => {
  if (process.platform !== 'darwin' && process.platform !== 'linux') {
    throw new Error(
      `Unsupported platform ${process.platform}.${
        process.platform === 'win32' ? ' If you are on Windows, please use WSL.' : ''
      }`
    );
  }
  if (process.arch !== 'arm64' && process.arch !== 'x64') {
    throw new Error(`Unsupported arch ${process.arch}`);
  }
  return platforms[process.platform][process.arch];
};

export const versionFilePath = join(__dirname, '../VERSION');

export const getCurrentVersion = () => {
  const fuelCoreVersion = readFileSync(versionFilePath, 'utf8');
  return fuelCoreVersion.trim();
};

export const setCurrentVersion = (version) => {
  writeFileSync(versionFilePath, version);
};

export const isGitBranch = (versionFileContents) => versionFileContents.indexOf('git:') !== -1;

const fuelCoreRepoUrl = 'https://github.com/fuellabs/fuel-core.git';

View on GitHub (pinned to b3f37c91ac)

Solutions

  1. Install a 64-bit Node.js build (`x64` or `arm64`) matching the host CPU.
  2. On 32-bit ARM boards, move to a 64-bit kernel/userland.
  3. Build fuel-core from source via `git:<branch>` in VERSION and extend the `platforms` map if you need a new arch.

Example fix

// before
$ node -p process.arch
armv7l
// after: use a 64-bit capable image/board, then
$ node -p process.arch
arm64
Defensive patterns

Strategy: validation

Validate before calling

const SUPPORTED_ARCHS = new Set(['arm64', 'x64']);
if (!SUPPORTED_ARCHS.has(process.arch)) {
  throw new Error(`Refusing to install fuel-core on arch ${process.arch}; use x64 or arm64 Node.js.`);
}

Prevention

When it happens

Trigger: Running on `ia32`, `arm`/`armv7l`, `mips`, `riscv64`, or any other architecture outside {arm64, x64}.

Common situations: 32-bit Node.js builds on 64-bit hosts; embedded boards on 32-bit ARM; uncommon-arch CI emulators.

Related errors


AI-assisted analysis of FuelLabs/fuels-ts@b3f37c91ac (2026-08-12). Data as JSON: /api/errors/fbff84b27cfc9085. Report an issue: GitHub.