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
- Run `mise settings node.compile=true` to allow building from source
- Pick a Node version with published prebuilt binaries for your platform
- 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
- Verify SHASUMS256.txt lists your platform before pinning a node version
- Avoid 32-bit / end-of-life platforms the dist server no longer serves
- Enable node.compile for environments where you control a compiler toolchain
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
- {message}\ncompilation is disabled
- {message} locked mode requires the locked precompiled artifa
- precompiled node archive not found and locked mode requires
- precompiled node archive not found (404)
- no precompiled python found for {tv} on {platform}
AI-assisted analysis of jdx/mise@afd2eddd3a (2026-09-09).
Data as JSON: /api/errors/34231da51e7e53bb.
Report an issue: GitHub.