DioxusLabs/dioxus · error · anyhow::Error

makensis failed (exit code {:?}): stdout: {} stderr: {}

Error message

makensis failed (exit code {:?}):
stdout: {}
stderr: {}

What it means

Raised in bundle_windows_nsis after running makensis on the generated .nsi installer script: the process completed but returned a non-zero exit status. This is an external tool failure — the generated NSIS script or local NSIS setup caused the installer build to fail — and makensis's captured stdout/stderr are surfaced in the message.

Source

Thrown at packages/cli/src/bundler/windows.rs:593

        let nsi_path = output_dir.join(format!("{product_name}.nsi"));
        std::fs::write(&nsi_path, &nsi_content).context("Failed to write NSIS script")?;

        tracing::info!("Running makensis to build NSIS installer...");
        let mut cmd = Command::new(&makensis);
        cmd.arg("-NOCD");
        cmd.arg(&nsi_path);

        tracing::debug!("makensis command: {:?}", cmd);

        let output = cmd
            .output()
            .await
            .with_context(|| format!("Failed to run makensis at {}", makensis.display()))?;

        if !output.status.success() {
            let stderr = String::from_utf8_lossy(&output.stderr);
            let stdout = String::from_utf8_lossy(&output.stdout);
            bail!(
                "makensis failed (exit code {:?}):\nstdout: {}\nstderr: {}",
                output.status.code(),
                stdout,
                stderr
            );
        }

        if can_sign_windows(&windows_settings) {
            self.try_sign_windows(&output_path).await?;
        }

        if !output_path.exists() {
            bail!(
                "makensis completed but installer not found at {}",
                output_path.display()
            );
        }

View on GitHub (pinned to 24f6a829df)

Solutions

  1. makensis failed. Read the printed stdout and stderr and fix the NSIS script error it reports.
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at packages/cli/src/bundler/windows.rs:593 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of DioxusLabs/dioxus@24f6a829df (2026-08-23). Data as JSON: /api/errors/0b8689680dba5b40. Report an issue: GitHub.