vim+coc.nvim+ccls问题?
请问对于以下项目,我怎么使用?
项目名:test
结构:
~/test
~/include/test.h
~/test.cpp
直接.cpp连接include下的test.h,ccls报错,clang能正常编译
vim+coc.nvim+ccls问题?
请问对于以下项目,我怎么使用?
项目名:test
结构:
~/test
~/include/test.h
~/test.cpp
直接.cpp连接include下的test.h,ccls报错,clang能正常编译
对于使用 vim
+ coc.nvim
+ ccls
配置的项目,如果你遇到了 ccls
报错而 clang
能正常编译的情况,可能是因为 ccls
没有正确配置项目的包含路径。
首先,确保你的 ccls
配置文件(通常是 .ccls
或者在项目根目录下的 compile_commands.json
)包含了正确的包含路径。对于你的项目结构,你可能需要在 ccls
的配置中指定 ~/include
作为包含目录。
下面是一个简单的 .ccls
配置文件示例,用于你的项目结构:
{
"compileCommands": "${workspaceFolder}/compile_commands.json",
"includePath": [
"${workspaceFolder}",
"${workspaceFolder}/include"
],
"defines": [],
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "gcc-x64"
}
将上述内容保存为 .ccls
文件,并放置在项目的根目录(~/test
)中。
如果你没有 compile_commands.json
文件,你可能需要手动指定 includePath
。在上述配置中,${workspaceFolder}
是 vim
当前工作区的路径,即你的项目根目录。${workspaceFolder}/include
指向了你的 include
目录。
确保你的 vim
配置也正确地加载了 coc.nvim
和 ccls
插件,并且 coc.nvim
能够读取 .ccls
配置文件。
如果你已经有了 compile_commands.json
,确保该文件是由正确的构建系统生成的,并且包含了 include
目录的路径。在大多数情况下,这个文件是由 CMake
或 Bear
等工具生成的。
如果你依然遇到问题,请检查以下几点:
ccls
插件在 vim
中正确安装并启用。ccls
插件的日志输出,看是否有更详细的错误信息。clang
和 ccls
使用的是相同版本的编译器和库。最后,如果你依然无法解决问题,可以考虑在 ccls
的 GitHub 仓库或者 Vim 社区论坛中搜索类似的问题或提交新的问题。
4 回答1.4k 阅读
1 回答1.2k 阅读
1 回答1.5k 阅读
1 回答1.3k 阅读
1 回答1.1k 阅读
1 回答957 阅读
1 回答880 阅读