给vscode配置clangd插件

  一般情况下,我们在vscode里编辑C/C++代码时用的都是微软的c++ package,但是这个插件包很多时候无法正确分析出语法,导致大量虚假错误报告,为了解决这个问题,我们首先禁用掉C++插件包,然后准备更换clangd。

  clangd是一个基于Clangd的分析服务器,方便我们分析代码语法。为了使用它,首先需要下载clangd。在命令行里输入llvm-config --version,查看你的llvm版本,然后用sudo apt install clangd-xx下载对应版本的clangd,我的llvm是14.0.0,所以我下载的是clangd-14。然后按照官网的说明,输入这段命令:

sudo update-alternatives --install /usr/bin/clangd clangd /usr/bin/clangd-xx 100

xx需要自己更换为版本号,这样就把下载的clangd-xx设置为了默认的clangd。此时如果输入which clangd有反应,或者可以查clangd版本号。那就可以了。

  然后,vscode上安装clangd插件。安装好以后,再下载bear工具,在你的工程文件夹里,和makefile同目录下执行bear -- make,生成一个编译命令的json文件:compile_command.json。如果生成空文件可能是因为没有新内容,不需要重新构建。可以make clean重新构建一遍,或者bear -- make -B强制。

  最后,在工程文件夹下新建一个.vscode(正常情况下已经有了),在里面新建或者继续编辑settings.json,新增一条记录:

"C_Cpp.default.compileCommands": "/xxx/compile_command.json"

注意路径根据情况自己修改。此时nemu下的文件解析应该就全部正常了。如果一直查看输出,可以通过切换到clangd来查看输出状态。

 

参考:官网:入门 --- Getting started (llvm.org)

posted @   namezhyp  阅读(866)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示