问题标签 [clangd]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - Clangd 找不到标准标题
我正在使用 Atom 编写 C++ 代码并安装了 llvm 套件以使用使用 clangd 语言服务器的Atom 包。它似乎正在工作,除了clangd 似乎没有找到标准头文件(例如iostream、算法)。我使用预构建的 Windows 二进制文件安装了 llvm。Atom 诊断窗格中显示的错误是“找不到‘算法’文件”。
有谁知道我可以做些什么来让clangd找到标准标题?
vim - 使用 vim 和 coc-clangd 索引整个项目目录
几天以来,我试图强制vim-coc(使用coc-clangd)与项目正常工作。我的测试项目是克隆的 bluez 项目。当我bluez/src/main.c
使用 vim(在我的情况下为neovim)打开时,大多数自动完成和 goto 定义都有效,但不幸的是,某些包含的标头#include "lib/bluetooth.h"
无法引用,因为它的位置位于bluez/lib/...
. 如何强制 vim-coc 将主 bluez 目录视为索引器的主目录?
vim - 是否可以在防火墙后面使用 coc.nvim 扩展?
就我而言,我试图coc-clangd
在有防火墙的地方使用,以防止访问外部资源(如 github)。然而,有一种方法可以拥有 github repos 的本地镜像。这是我有副本的地方coc.nvim
和clangd/coc-clangd
:
但是,安装此扩展程序并不能开箱即用:
第一种方法: :CocInstall http://companymirror/github/clangd/coc-clangd.git
结果... in is not supported, coc.nvim support github.com only
第二种方法:( Plug 'clangd/coc-clangd', {'do': 'yarn install --frozen-lockfile'}
在.vimrc
with 中vim-plug
)导致错误:PlugInstall
:
哪里/home/user/.vim/plugged/coc-clangd/yarn-error.log
有:
系统信息:
Clangd 版本:10.0.0
操作系统:CentOS 7.3
编辑:没有可用的代理服务器,可以允许使用http_proxy
类似的环境变量。
编辑2:这似乎是yarn
配置问题。 这个问题给出了运行提示yarn config set "strict-ssl" false -g
,它关闭了证书检查并让我安装扩展!
gcc - 我可以使用 GCC 编译器和 Clangd 语言服务器吗?
据我所知,我正在开发一个使用 GCC 库 (SFML) 的项目,该库不适用于 clang。我正在使用带有 vim 的 COC 来完成代码,但对于 C++,它需要 clangd。有没有办法使用 GCC 作为我的编译器,但仍然使用 clangd 语言服务器?
我还听说可能有一种方法可以让 clang 识别 GCC 库/头文件,但我一直无法让它正常工作。如果有人能指出我正确的方向,那也会有帮助。但是我习惯了 GCC(自从我开始编写 C++ 以来我一直在使用它),所以能够使用 clangd和GCC 会更好。
vim - 执行 :CocCommand clangd.install 时出现 Vim Coc 错误消息
我已经为我的其他机器安装了 vim coc ( https://github.com/neoclide/coc.nvim ) 和 clangd,没有任何问题。:CocCommand clangd.install
但是当我昨天尝试时,我得到了
PS:上一步即:CocInstall coc-clangd
工作得很好
有什么建议么?
visual-studio-code - VSCode clangd 扩展找不到头文件
我当前的文件结构是:
example.hh
: 留空
example.cc
:
compile_commands.json
:
打开example.cc
时会报错:
我直接运行命令,它工作正常:
环境信息:
VS代码:1.47.3
vscode-clangd:0.1.7
c++ - 调试 C++ 语言服务器错误:无效的 AST
我有一个 C++ 项目,我可以在其中打开任何 .cpp 或 .h,并且 LSP 将崩溃/失败(我使用带有 .cpp 的 emacs lsp-mode
)。
例如,如果我尝试打开一个名为 的文件,clangd 将失败,并在clangd::stderr缓冲区IDictionary.h
中出现以下错误
ccls 也失败(带信号退出),尽管它的错误消息也没有帮助
无论如何,这发生在项目中的每个文件中,即使是简单的
我的假设是 build/compile_commands.json 拉入的一些文件正在搞砸一切,但我不能确定。VSCode(我假设它使用的是 LSP,虽然我知道它有自己的技巧)在我的项目中根本没有任何问题。
无论如何,我希望有人可以向我指出一些更详细的日志clangd
或ccls
日志,也许还有一些命令可以让我获得更多信息性错误消息或验证项目中的文件
clang - 当只有一个文件被索引时,`clangd` 如何知道函数定义在哪里?
当通过 LSP(语言服务器协议)消息仅索引一个文件时,如何clangd
知道函数定义在哪里textDocument/didOpen
?
compile_commands.json
这个问题是基于没有文件可供使用的假设clangd
。
据我所知,当接收到工作区中没有文件的 LSP 消息(?)时,clangd
将部分索引(?)给定文件。clangd
textDocument/didOpen
compile_commands.json
因此,被部分索引的文件的索引将仅驻留在内存中。
那么,当它不知道任何外部文件时,如何clangd
知道部分索引文件之外的定义呢?
或者它知道吗?
或者它是否通过一些查看相对路径或#include "<filename.hpp>"
仅驻留在目录root-project-dir/src
等中的包含()的启发式方法来了解其他文件?
vim - 如何使用 coc-clangd 在 vim 中使用 lib gtk 在 C 中编程?
我从 GTK 项目的网站上复制了“Hello world”代码,并将其粘贴到 Vim 中,并使用正确配置了coc-clangd的 C 语言进行开发。然而,几个错误显示在
#include <gtk/gtk.h>
但是当我使用命令发送编译时:
gcc `pkg-config --cflags gtk+-3.0` -o hello-world-gtk hello-world-gtk.c `pkg-config --libs gtk+-3.0`
它完美地工作我试图添加
`pkg-config --cflags gtk+-3.0`
在
clangd.fallbackFlags
:CocConfig
但它没有用。
c++ - 使用 \n 而不是 endl 和 -std=c++2a 时奇怪的 clangd 崩溃
这是参考源文件
如果我在行之前打开一行cout
并写入,std::
我会正确看到 YCM 的语义完成弹出窗口;如果我在with 行之后cout
做同样的事情,我会得到一个ResponseAbortedException: Response Aborted
错误。
:YcmDebugInfo
给