{"record":{"id":"6dd3f95fb248e019","repo":"zed-industries/zed","slug":"clangd-does-not-provide-prebuilt-binaries-for-arc","errorCode":null,"errorMessage":"Clangd does not provide prebuilt binaries for {arch} to fetch from GitHub. Consider installing the binary manually.","messagePattern":"Clangd does not provide prebuilt binaries for (.+?) to fetch from GitHub\\. Consider installing the binary manually\\.","errorType":"exception","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"crates/languages/src/c.rs","lineNumber":165,"sourceCode":"            .await?;\n\n            Ok(binary)\n        }\n    }\n\n    async fn cached_server_binary(\n        &self,\n        container_dir: PathBuf,\n        _: &dyn LspAdapterDelegate,\n    ) -> Option<LanguageServerBinary> {\n        get_cached_server_binary(container_dir).await\n    }\n}\n\nfn ensure_arch_compatibility() -> Result<()> {\n    let arch = consts::ARCH;\n    if consts::OS == \"linux\" && ![\"x86_64\", \"x86\"].contains(&arch) {\n        anyhow::bail!(\n            \"Clangd does not provide prebuilt binaries for {arch} to fetch from GitHub. Consider installing the binary manually.\"\n        )\n    }\n    Ok(())\n}\n\n#[async_trait(?Send)]\nimpl super::LspAdapter for CLspAdapter {\n    fn name(&self) -> LanguageServerName {\n        Self::SERVER_NAME\n    }\n\n    async fn label_for_completion(\n        &self,\n        completion: &lsp::CompletionItem,\n        language: &Arc<Language>,\n    ) -> Option<CodeLabel> {\n        let label_detail = match &completion.label_details {","sourceCodeStart":147,"sourceCodeEnd":183,"githubUrl":"https://github.com/zed-industries/zed/blob/f4178619acd0d47ea1f76a2025c42962c6d6638c/crates/languages/src/c.rs#L147-L183","documentation":"ensure_arch_compatibility bails when running on linux with an architecture other than x86_64/x86, because clangd's GitHub releases only ship prebuilt x86 linux binaries; the user is told to install clangd manually.","triggerScenarios":"Thrown at crates/languages/src/c.rs:165 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Install clangd via the system package manager (apt, dnf, pacman, brew) and point Zed at it","Use a supported architecture (x86_64 Linux) or a build of Zed for arm64 where clangd assets exist","Configure the clangd binary path manually in Zed settings to skip GitHub download"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"f4178619acd0d47ea1f76a2025c42962c6d6638c","analyzedAt":"2026-08-20T19:29:52.058Z","contentChangedAt":"2026-08-20T19:29:52.058Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}