【问题标题】:Precompiler sees my include, but the compiler throws c1083 "not found"预编译器看到我的包含,但编译器抛出 c1083“未找到”
【发布时间】:2014-06-06 14:20:49
【问题描述】:

所以,这个问题可能与Why does QT not recognize my header file? cannot open include file No such file or directory 重复,但它从未得到任何体面的答案。 请放轻松,因为我不是软件工程师。

几年前,我在 Kubuntu Qt 上编写了这个非常复杂的程序。我正在尝试将其移植到 Windows(我将跳过有关原因的详细信息),但我不断收到这些

C1083 "cannot open include file ... no such file"

错误提示某些我的标题不存在。我最近在 Linux 中编译它以确保我没有发疯,但它仍然在 Windows 中引发大量错误。

这个程序本质上有很多前向声明。 gcc 和 msvc2012 编译器之间是否存在一些优先级差异?是否有一些程序会按照包含的顺序让我知道它卡在哪里?

【问题讨论】:

标签: c++ qt visual-c++ forward-declaration


【解决方案1】:

我为此提供了一些帮助,他建议我将我的源代码的位置添加到 INCLUDE_PATH。我认为这很愚蠢,但它确实有效。我猜unix的编译器只是做了(聪明的)假设。

很抱歉,如果回答您自己的问题违反了发帖规则。

【讨论】:

  • 为了我自己的启迪,如果有人能解释为什么 MSVC 2012 编译器还没有将源代码的位置添加到他们的路径中(或者我不小心做错了什么),我会很高兴。
  • #include 指令是使用<...> 语法还是"..." 语法? (顺便说一句,回答您自己的问题是完全可以接受的;获得有用的问题和答案是目标。)常见问题解答中对此进行了介绍:stackoverflow.com/help/self-answer
  • 感谢您的保证。我对自己的头文件使用"..." 语法,对Qt 头文件使用<...> 语法,但问题出在我自己的个人头文件上。
猜你喜欢
  • 1970-01-01
  • 2022-12-01
  • 2014-04-28
  • 1970-01-01
  • 2022-01-16
  • 2016-07-15
  • 2018-11-26
  • 1970-01-01
  • 2021-04-10
相关资源
最近更新 更多