jdx/mise · error

precompiled node archive not found and compilation is disabl

Error message

precompiled node archive not found and compilation is disabled

What it means

Fallback variant of the node install failure: when no precompiled Node archive exists for the version/platform AND there is no specific flavor-not-found message, mise aborts with this generic message because node.compile is disabled. Node core plugin only installs precompiled binaries unless compilation is explicitly enabled.

Source

Thrown at src/plugins/core/node.rs:150

            }
            FetchOutcome::NotFound => {
                if ctx.locked {
                    if let Some(message) = node_flavor_not_found_message(opts) {
                        bail!("{message}\nlocked mode requires the locked precompiled artifact")
                    }
                    bail!(
                        "precompiled node archive not found and locked mode requires the locked precompiled artifact"
                    )
                } else if Settings::get().node_compile(CompilePurpose::Inspect) != Some(false) {
                    if let Some(message) = node_flavor_not_found_message(opts) {
                        warn!("{message}");
                    }
                    self.install_compiling(ctx, tv, opts).await
                } else {
                    if let Some(message) = node_flavor_not_found_message(opts) {
                        bail!("{message}\ncompilation is disabled")
                    }
                    bail!("precompiled node archive not found and compilation is disabled")
                }
            }
        }
    }

    async fn install_windows(
        &self,
        ctx: &InstallContext,
        tv: &mut ToolVersion,
        opts: &BuildOpts,
    ) -> Result<()> {
        match self
            .fetch_binary(ctx, tv, opts, || self.extract_zip(opts, ctx))
            .await?
        {
            FetchOutcome::Downloaded => {
                warn_patches_not_applied();
                Ok(())

View on GitHub (pinned to afd2eddd3a)

Solutions

  1. Run `mise settings node.compile=true` to allow building from source
  2. Pick a Node version with published prebuilt binaries for your platform
  3. Use a different backend (e.g. a vfox node plugin) if you need an unsupported platform

Example fix

// before
mise install node@23.0.0  // 404 on prebuilt

// after
mise settings set node.compile true
mise install node@23.0.0
Defensive patterns

Strategy: fallback

Validate before calling

url="https://nodejs.org/dist/latest-v20.x/SHASUMS256.txt"
curl -fsSL "$url" | grep -q "$(node -p 'process.platform')-$(node -p 'process.arch').tar.gz" || echo 'no prebuilt; enable node.compile'

Try / catch

if ! mise install node@"$VER"; then
  mise settings set node.compile true
  mise install node@"$VER"
fi

Prevention

When it happens

Trigger: `mise install node@<version>` where the nodejs.org dist URL 404s for the current platform/arch and settings node.compile is not enabled.

Common situations: Very new Node releases not yet mirrored; dropped platforms (e.g. 32-bit Linux, older macOS); unofficial flavors without prebuilt assets.

Understand the failure class

Background: 'Could not be found', 'does not exist', 'not found in database': the resource-not-found family when an ID, slug, key, or URI lookup comes back empty — this error's family across 20 libraries.

Related errors


AI-assisted analysis of jdx/mise@afd2eddd3a (2026-09-09). Data as JSON: /api/errors/34231da51e7e53bb. Report an issue: GitHub.