zed-industries/zed · error
unsupported architecture {unsupported}
Error message
unsupported architecture {unsupported} What it means
fetch_latest_adapter_version in the codelldb adapter maps std::env::consts::ARCH to a VSIX asset suffix (aarch64->arm64, x86_64->x64) before looking for 'codelldb-{platform}-{arch}.vsix' in the vadimcn/codelldb latest GitHub release. Any other arch bails with 'unsupported architecture {unsupported}', stopping the adapter install before any download starts.
Source
Thrown at crates/dap_adapters/src/codelldb.rs:59
Ok(dap::StartDebuggingRequestArguments {
request,
configuration,
})
}
async fn fetch_latest_adapter_version(
&self,
delegate: &Arc<dyn DapDelegate>,
) -> Result<AdapterVersion> {
let release =
latest_github_release("vadimcn/codelldb", true, false, delegate.http_client()).await?;
let arch = match std::env::consts::ARCH {
"aarch64" => "arm64",
"x86_64" => "x64",
unsupported => {
anyhow::bail!("unsupported architecture {unsupported}");
}
};
let platform = match std::env::consts::OS {
"macos" => "darwin",
"linux" => "linux",
"windows" => "win32",
unsupported => {
anyhow::bail!("unsupported operating system {unsupported}");
}
};
let asset_name = format!("codelldb-{platform}-{arch}.vsix");
let ret = AdapterVersion {
tag_name: release.tag_name,
url: release
.assets
.iter()
.find(|asset| asset.name == asset_name)
.with_context(|| format!("no asset found matching {asset_name:?}"))?View on GitHub (pinned to f4178619ac)
Solutions
- Use a 64-bit aarch64/x86_64 system for LLDB debugging via codelldb
- Switch the debugger config to use a locally installed lldb/gdb via a custom adapter instead of codelldb
- Build codelldb from source for the arch and reference it via a custom adapter command
Defensive patterns
Strategy: validation
Validate before calling
fn codelldb_arch_supported() -> bool {
matches!(std::env::consts::ARCH, "aarch64" | "x86_64")
}
if !codelldb_arch_supported() {
// choose a custom adapter backed by a local lldb instead of installing codelldb
} Type guard
fn is_supported_codelldb_arch(arch: &str) -> bool {
matches!(arch, "aarch64" | "x86_64")
} Prevention
- Check arch/OS support before offering codelldb in the UI on niche platforms
- Maintain a fallback adapter (system lldb) for unsupported architectures
When it happens
Trigger: Zed attempts to install/update codelldb on a machine whose arch is not aarch64/x86_64 (32-bit ARM, riscv64, etc.), so the asset-name match would always fail and the code bails early with the arch name.
Common situations: 32-bit OSes on ARM boards; niche architectures with community Zed builds; containers reporting unusual uname/arch personalities.
Related errors
- unsupported operating system {unsupported}
- Could not find gdb path or it's not installed
- Running on unsupported os: {other}
- failed to install dlv via `go install`. stdout: {:?}, stderr
- unsupported Copilot language server architecture: {architect
AI-assisted analysis of zed-industries/zed@f4178619ac (2026-08-20).
Data as JSON: /api/errors/122d83b66cfc9c78.
Report an issue: GitHub.