简介:Clangd 是什么

1.安装
clangd已经包含在llvm中,而llvm针对Linux有预编译的软件包,直接下载解压即可使用。

https://mirrors.tuna.tsinghua.edu.cn/github-release/llvm/llvm-project/LLVM%2012.0.1/clang%2Bllvm-12.0.1-x86_64-linux-gnu-ubuntu-16.04.tar.xz

可以直接在编译服务器上使用wget、curl等工具下载。

解压可使用tar命令:

tar -xf clang+llvm-12.0.1-x86_64-linux-gnu-ubuntu-16.04.tar.xz

直接运行解压缩后的 bin/clangd 即可。

如果需要在任何路径下使用命令 clangd ,请参考如何将特定路径加入PATH环境变量。不在本篇的讨论范围内。

配置

VSCode 使用clangd

首先请先使用 Remote - SSH 插件连接到编译服务器上

然后在插件系统中搜索并安装 clangd

找到 clangd 的配置项,在「远程」标签页下找到 Clangd: Path 配置项,填写编译服务器上 clangd 的绝对路径。

Vim 使用clangd

T.B.D.

Spacemacs 使用clangd

在 dotspacemacs-configuration-layers 下使用如下 c-c++ layer 的设定,指定 clangd 为lsp后端。

.spacemacs下


(c-c++ :variables
       c-c++-backend 'lsp-clangd
       c-c++-enable-clang-support t
       )

compdb(compile_commands.json)

clangd 能够正常工作依赖于 compile_commands.json 文件,该文件记录了工程中各个文件的编译指令。此文件需要放置在工程目录或者其父级目录中。

具体生成方式参见 :compile_commands.json的生成

更多推荐