首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Visual Studio代码clangd扩展配置

Visual Studio代码clangd扩展配置
EN

Stack Overflow用户
提问于 2018-07-18 21:03:02
回答 3查看 3.1K关注 0票数 1

我正在尝试使用vscode-clangd扩展将clangd与VS Code集成,但我在配置包含路径时遇到了问题...

我在VS代码设置中创建了额外的配置:

代码语言:javascript
复制
"clangd.path": "path_to_clangd/bin/clangd",
"clangd.arguments": [
    "-compile-commands-dir=path_to_commands/compile_commands.json"
]

但该扩展报告了大量的missing includes错误。

我也尝试过:

代码语言:javascript
复制
    "-compile-commands-dir=path_to_commands"

但这也不起作用。

有人知道如何配置这个扩展吗?在这一点上我找不到任何文档。

问候

EN

回答 3

Stack Overflow用户

发布于 2020-11-18 10:51:47

您的路径应该是compile_commands.json的目录,而不是文件,并且需要通过vscode-clangd扩展重新启动clangd

settings.json

代码语言:javascript
复制
{
    "cmake.buildDirectory": "${workspaceFolder}/debug",
    "clangd.arguments": [
        "-background-index",
        "-compile-commands-dir=debug"
    ],
}

重新启动

  1. 更改项目根目录下的.clang-tidy文件,如果没有,创建一个带有
  2. 的文件。vscode-clangd将提示您重新启动clangd
  3. 检查clangd进程,它应该类似于

代码语言:javascript
复制
❯ ps -Af | grep clangd
awei     285478 282126  0 10:42 ?        00:00:03 /opt/llvm-10.0.0/bin/clangd -background-index -compile-commands-dir=debug
票数 2
EN

Stack Overflow用户

发布于 2020-12-10 11:29:07

这是我的答案,它是有效的:

代码语言:javascript
复制
    "clangd.path": "/Users/jiewang/Library/Application Support/Code/User/globalStorage/llvm-vs-code-extensions.vscode-clangd/install/11.0.0/clangd_11.0.0/bin/clangd",
    "clangd.arguments": [
        "--compile-commands-dir=${workspaceFolder}/build",
        "--completion-style=detailed",
        "--header-insertion=never"
    ],
票数 1
EN

Stack Overflow用户

发布于 2018-08-05 15:14:35

似乎compile_commands.json必须在文件夹根目录中,扩展才能找到它。

我只需要添加一个符号链接:

代码语言:javascript
复制
ln -s /path-to-build-dir/compile_commands.json /path-to-src-root-dir/
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51402740

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档