DioxusLabs/dioxus · error · anyhow::Error
WiX extraction succeeded but candle.exe not found at {}
Error message
WiX extraction succeeded but candle.exe not found at {} What it means
ensure_wix downloaded and extracted the WiX toolset but candle.exe is not at the expected path. The zip layout or version changed so the post-extraction check fails, and the bundler bails with the missing path.
Source
Thrown at packages/cli/src/bundler/tools.rs:161
let wix_dir = tools_dir.join("wix314");
let candle = wix_dir.join("candle.exe");
if candle.exists() {
return Ok(wix_dir);
}
if CliSettings::prefer_no_downloads() {
bail!("WiX not found and automatic downloads are disabled. Install WiX manually.");
}
tracing::info!("Downloading WiX toolset...");
let data = download_and_verify(WIX_URL, WIX_SHA256, HashAlgo::Sha256).await?;
std::fs::create_dir_all(&wix_dir)?;
extract_zip(&data, &wix_dir)?;
if !candle.exists() {
bail!(
"WiX extraction succeeded but candle.exe not found at {}",
candle.display()
);
}
Ok(wix_dir)
}
async fn ensure_linuxdeploy(tools_dir: &Path, arch: &str) -> Result<PathBuf> {
let linuxdeploy_name = format!("linuxdeploy-{arch}.AppImage");
let linuxdeploy_path = tools_dir.join(&linuxdeploy_name);
if linuxdeploy_path.exists() {
return Ok(linuxdeploy_path);
}
if CliSettings::prefer_no_downloads() {
bail!(View on GitHub (pinned to 24f6a829df)
Solutions
- candle.exe is missing after extraction. Re-download WiX or fix the expected path.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at packages/cli/src/bundler/tools.rs:161 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/61a1b0a75a7ed051.
Report an issue: GitHub.