VSCode里clangd如何配置跳转

本文讲述如何在vscode里配置clangd来实现跳转,项目工程使用CMake,比较简单

一 安装clangd及其VScode插件

VSCode里的cland插件是依赖本地安装的clangd,所以需要事先安装好

bash 复制代码
sudo apt install clangd

然后就是安装vscode插件,在extension里搜索clangd,点击安装

注意这里要禁用微软的 C/C++ IntelliSense插件

二 配置CMake

可以在项目工程的CMakeLists.txt里加上

bash 复制代码
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

或者在编译时开启这个选项,

bash 复制代码
cmake -S . -B build -DCMAKE_EXPORT_COMPILE_COMMANDS=ON

编译后会在build目录下生成compile_commands.json,这个就是clangd解析需要的文件

默认clangd会去找项目根目录下的compile_commands.json,但是一般来说这个文件都是在build目录下,那么此时有2种办法让clangd找到这个json文件

1. 使用软链接

在根目录下执行,

bash 复制代码
ln -s build/compile_commands.json compile_commands.json

2. 修改项目的vscode配置

在当前目录下,创建**.vscode/settings.json** ,然后添加以下内容,

TypeScript 复制代码
{
    "clangd.arguments": [
        "--compile-commands-dir=build"
    ]
}

这个build就是我们的build目录

三 重启

Ctrl+Shift+P,然后选择clangd: Restart language server即可

相关推荐
●VON7 小时前
鸿蒙 PC Markdown 编辑器内核:在 ArkWeb 中离线运行 CodeMirror 6
安全·华为·编辑器·harmonyos·鸿蒙
●VON16 小时前
鸿蒙 PC Markdown 编辑器存储安全:AtomicFile 原子提交与故障注入
安全·华为·编辑器·harmonyos·鸿蒙
●VON1 天前
鸿蒙 PC Markdown 编辑器 Alpha 评审:如何用退出条件判断阶段完成
网络·安全·华为·编辑器·harmonyos·鸿蒙
MGS浪疯1 天前
我用 WorkBuddy 做了一个能记住前文的 AI 小说编辑器
人工智能·编辑器·腾讯云·腾讯云ai代码助手·workbuddy开发者分享季·codebuddy开发者分享季
●VON1 天前
鸿蒙 PC Markdown 编辑器 Bridge 协议:原生外壳与 Web 内核的状态同步
前端·华为·编辑器·harmonyos·鸿蒙
Irene19912 天前
怎么设置 PyCharm 使用 VSCode 的快捷键,推荐保留的原生快捷键(特色功能不建议覆盖,否则丧失效率优势)Ctrl+Alt+L:代码格式化
vscode·pycharm·快捷键
●VON2 天前
鸿蒙 PC Markdown 编辑器原生右键弹层兼容
安全·华为·编辑器·harmonyos·鸿蒙
放学校门口见2 天前
vscode部署stm32开发调试环境
ide·vscode·stm32
●VON2 天前
鸿蒙 PC Markdown 编辑器系统浏览器与图片查看器独立验收
华为·编辑器·harmonyos·鸿蒙
●VON2 天前
鸿蒙 PC Markdown 编辑器通信架构:受限 ArkTS-JavaScript Bridge
华为·架构·编辑器·harmonyos·鸿蒙