首页 > 解决方案 > linux上的clangd找不到默认标头

问题描述

我已经从官方 PPA 安装了最新的 LLVM 工具链,包括 clang、clang-tools-extra、lldb、lld、libc++ 和 libc++abi。我正在尝试将clangd 与 emacs + lsp一起使用。

一切正常,除了 clangd 找不到内存、向量等默认标头。我的代码很好,它通常是使用 clang 编译的。我的 compile_commands.json 也可以。

如何使clangd工作?

编辑:删除了关于从源代码构建 llvm+clang 的提及,因为它已被错误地完成。

标签: c++linuxubuntuemacsclang

解决方案


我在互联网上没有找到任何信息,所以在这里发布解决方案。假设 llvm 工具链安装在/usr/lib/llvm-8. 答案是:

sudo ln -s /usr/lib/llvm-8/include/c++/v1 /usr/include/c++/v1

而已。祝你好运。


推荐阅读