c++ - vim 插件 youcompleteme for project using scons and g++ compiler

标签 c++ vim youcompleteme

我刚刚在 CentOS 7 上安装了 YCM。我现在正在为我的项目生成一个等效于文件的“.ycm_extra_conf.py”,这是一个 c++ 文件的嵌套目录,使用 Scons 构建系统和 g++ (使用 -std=c++98) 来编译 c++ 文件。 我有几个问题:

  1. 是“.ycm_extra_conf.py”中“flags”变量的内容 在我的例子中,将传递给项目编译器的标志归档 scons 构建系统的 g++ 编译器?
  2. 如果问题 1 的答案是肯定的,那么这些相同的标志是否会传递给 YCM编译文件时会发出clang声吗?如果是这样,是YCM编译还是更多 从技术上处理项目中的 c++ 文件以用于 语义补全?
  3. 如果问题 2 的答案是肯定的,那么我猜测我在 “flags”变量不适用于 clang,因为它们适用于 g++。我应该将标志转换/映射到 clang 吗?
  4. YCM 是否使用 clang 仅前端编译文件以生成 用于语义完成的 AST?

抱歉这些幼稚的问题,我是 YCM 的新手。非常感谢任何帮助/指导。

问候并感谢您, 艾哈迈德。

最佳答案

使用 ycm 在 vi​​m 中获得自动完成功能的最简单方法是 bear:

https://github.com/rizsotto/Bear

安装它然后运行:

熊烤饼

您将获得让 ycm 满意的编译数据库。

关于c++ - vim 插件 youcompleteme for project using scons and g++ compiler,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40826737/

相关文章:

c++ - 在 Visual Studio 中返回长 double 值

c++ - 如何在 Visual Studio Community 2015 中打开输入文件 C++?

vim - 如何在 YouCompleteMe 弹出菜单中使用 <c-y> 扩展 UltiSnips 片段?

c - VIM 与你一起完成我

linux - YouCompleteMe 不可用 : unable to load Python

javascript - Vim 的兼容 JS 检查器(Syntastic | YouCompleteMe)?

c++ - 如何将复杂数据打包到 QtDBus 回复中?

C++,如果文件在读取时移动会怎样?

vim - 在新选项卡中打开文件时自动关闭 NERDTree

cygwin - 如何在 Cygwin 中使用我的 .vimrc 文件?