jdx/mise · error
compilation is disabled
Error message
{message}
compilation is disabled What it means
When the node precompiled archive is not found, compilation is disabled (node_compile = false), and a flavor message exists, the error combines the flavor explanation with 'compilation is disabled', since no install path remains.
Solutions
- Enable compilation (remove node.compile=false / unset NODE_COMPILE) so mise can build from source
- Use a standard Node version with published precompiled builds for your platform
- Drop the flavor and use official node builds
Example fix
# before (mise.toml) [settings] node.compile = false # after [settings] # node.compile removed — allow source fallback
Defensive patterns
Strategy: fallback
Validate before calling
# ensure compile isn't globally disabled when using flavored/odd node versions mise settings get node.compile; curl -sfIL "https://nodejs.org/dist/v20.0.0/node-v20.0.0-linux-x64.tar.gz"
Try / catch
mise install node@X || { mise settings set node.compile true && mise install node@X; } Prevention
- Don't disable node compilation globally if you use flavored node versions
- Confirm precompiled availability for the flavor/platform combo
- Scope compile=false to specific environments rather than global settings
When it happens
Trigger: Node flavor's precompiled archive missing AND settings set node compile to false, so neither the download nor the source-build fallback can proceed.
Common situations: Users who set NODE_COMPILE=false (or mise settings node.compile=false) for speed, then request a flavored/odd Node version with no published binary on their platform.
Understand the failure class
Background: "unsupported platform" / "not supported on this platform" errors: what they mean and how to fix them — this error's family across 47 libraries.
Related errors
- locked mode requires the locked precompiled artifact
- \ncompilation is disabled
- precompiled erlang is not supported on
- precompiled node archive not found and compilation is…
- precompiled node archive not found and locked mode requires…
AI-assisted analysis of jdx/mise@533346cc37 (2026-09-17).
Data as JSON: /api/errors/2067506e5e2f19fa.
Report an issue: GitHub.
Appendix: source
Thrown at src/plugins/core/node.rs:148
warn_patches_not_applied();
Ok(())
}
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 => {View on GitHub (pinned to 533346cc37)