clangd插件比c/c++更适用于中大型项目,能提供非常精确的代码补全、跳转、诊断和类型推断等。且资源占用量更少。
且提示信息更丰富,人性化,充分利用函数注释。
有个明显的劣势是不识别gcc的特有拓展,但在源码阅读这层影响不大。
要先使用clangd,需下载vscode的clangd插件,同时系统安装clangd服务器。sudo apt install clangd
一是让构建系统生成。 即 https://club.rt-thread.org/ask/article/1b1df03e18ffc73d.html
二是参考clangd的文档,跳转到bsp/qemu目录(任意qemu类型均可,这里我选择了risc64架构的),使用第三方工具bear生成bear -- scons
。
bear生成的json文件更全,建议使用后者。
https://clangd.llvm.org/installation
.clangd文件做了两件事。一是指明compile_compand.json。二是删除clangd不支持的编译参数(gcc拓展)。
效果如图:
🤞楼主可以展开说说这样配置之后的优点和阅读技巧吗?
楼主可以展开说说这样配置之后的优点和阅读技巧吗
第二种方法的compile_commands.json具体如何生成, 请说一下, 谢谢!
@xiaorui
好的,后面会抽时间更新说明这点。
@chenyingchun
好的,后面会抽时间更新说得更详细一点。
写的非常好,如果能结合scons命令能够自动生成和配置就完美了。
厉害👍