Qt Creator 在新项目中显示错误,但代码编译正常

Posted

技术标签:

【中文标题】Qt Creator 在新项目中显示错误,但代码编译正常【英文标题】:Qt Creator shows errors in fresh project, but code compiles fine 【发布时间】:2020-03-08 20:20:34 【问题描述】:

背景:我最近从 debian stable 切换到 debian testing,因此自上次使用 QT creator 以来我已经更新了数百个包。

当我在 QT creator 中创建一个新项目时,我会收到许多错误消息。

例如,以下是新项目中自动生成的 main.cpp 类的错误:

cstddef:50:10: fatal error: 'stddef.h' file not found
error: variable has incomplete type 'QApplication'
forward declaration of 'QApplication'
unknown type name 'MainWindow'

当我打开以前我知道没有错误的项目时,它们也会显示一大堆类似的错误。

但是,所有这些项目都可以正常构建和运行。

这是什么原因造成的?

【问题讨论】:

这些错误是来自您的 IDE 还是编译器? 我假设您的意思是 Qt Creator 编辑视图中显示的错误,并澄清了标题。如果我错了,请回滚我的编辑或进一步编辑。 @Brian 它们是与 qt creator 中的代码以及“问题”选项卡中的代码内联显示的错误。代码通过 qt creator 编译良好,没有任何编译器错误。 【参考方案1】:

我在bug report 中找到了解决此问题的方法。

需要安装libclang-common-8-dev 包。安装此软件包并重新启动 qt creator 后,所有错误都消失了。

【讨论】:

谢谢,这让我有些头疼。我正在将 Kubuntu 20.04 与发行版 qt 包一起使用,并认为我丢失了一些包,但没有明确的线索丢失了什么。 我必须在 Lubuntu 20.04 上添加 libclang-common-9-dev。现在可以正常编译了。 谢谢!我也在 Kubuntu 20.04,这让我很头疼! 很好的答案!奇怪的是,其他 2 个没有此答案的 SO 帖子是更高的 Google 结果 谢谢。它帮助我使用了 Mint 20.3 发行版。它在当前文件之外找不到任何响应部分(如声明),因此到处都是“语义问题”错误。【参考方案2】:

在看到 JShorthouse 的回答后,我禁用了所有与 Clang 相关的插件。然后,重启 QT creator 后一切都开始正常工作了。

在Help->About Plugins...下的菜单中找到插件列表

【讨论】:

就我而言,我只需要禁用 ClangCodeModel。

以上是关于Qt Creator 在新项目中显示错误,但代码编译正常的主要内容,如果未能解决你的问题,请参考以下文章

Qt Creator 项目向导不显示创建 Qt 项目的选项

Qt-creator 不会在 Android 上显示本地或表达式

Qt Creator 错误代码 -1073741819

在 Qt Creator 中包含 Python

QT Creator 无法工作

qt creator的一个项目配置成release编译出错问题