前言

为什么要用clangd呢?因为vscode自带的c/c++扩展一旦打开大型项目,代码提示和跳转速度都非常感人,而clangd的代码提示和跳转速度非常快,所以这里记录一下如何配置clangd。

而我的环境为windows,因为讨厌msvc的臃肿所以使用msys2的ucrt64里安装的g++,全网能搜到的教程要么是linux下的vscode,要么用wsl,还有的是直接llvm全套,总之我是没找到windows下vscode用g++编译器,仅使用clangd作为提示工具的方法,所以这里记录一下。

安装clangd

方案一

用scoop安装clangd

1
scoop install clangd

方案二

直接去github https://github.com/clangd/clangd/releases/tag/19.1.2 下载clangd,然后解压到任意位置,配置环境变量即可。

保证 clangd –version 有输出即可

配置vscode

打开vscode

之前安装的C/C++扩展都不用动,搜索clangd扩展

安装这一个就行,

这里疯狂提示confilct,因为之前安装了C/C++扩展,只能启用一个,这里我们选择Disable 即可

打开一个简单的helloworld项目,发现iostream头文件都找不到,接下来重点来了,如何解决这个问题。

在 C://Users/用户名/ 下创建 .clangd文件,内容如下

1
2
3
4
5
6
7
8
CompileFlags:
Add: [
-std=c++11,
--target=x86_64-w64-windows-gnu,
-IC:/env/msys2/ucrt64/include/c++/14.2.0,
-IC:/env/msys2/ucrt64/include/c++/14.2.0/x86_64-w64-mingw32,
-IC:/env/msys2/ucrt64/include
]

其中路径改为你环境上g++头文件路径

然后重启vscode就发现愉快的跳来跳去了