Qt Creator和CMake的自动完成

5
在Qt Creator中,我已经移除了qmake步骤,并添加了自己的cmake步骤和CMakeLists.txt文件。现在,对于我在项目内部定义的任何类,自动完成功能都可以正常工作。例如,我的自定义类的类名以不同的颜色显示,当我悬停在变量上时,它会给我提供有关该变量的详细信息。
但是,对于我在项目中使用的任何第三方库,自动完成功能都无法工作。这些类以标准白色显示,当我悬停在来自该库的变量上时,什么也没有显示出来。但是,在CMakeLists.txt中正确定义了库,我的程序可以编译和运行良好。因此,Qt Creator最终能够找到这些库,但不能在代码编辑期间找到它们以使自动完成功能正常工作。解决方案是什么?
1个回答

1
你可以尝试以下方法,这对我很有效。
  1. 打开一个 C++ 文件,在该文件中你想要使用自动完成功能。
  2. 前往 "工具 -> C++ -> 检查 C++ 代码模型"
  3. 在弹出窗口中,你会看到红色的未解析文件,位于 “快照和文档 -> 包括” 下面。
  4. 手动定位包含这些文件的文件夹。
  5. 在左边的项目视图中,找到 "[项目名称].include" 文件。
  6. 添加包含未解析文件的目录并保存,现在您应该可以使用自动完成功能了。
似乎 QT-Creator 的内置代码模型不从 CMake 中获取包含路径,而是依赖于其本身创建的文件。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接