【问题标题】:iostream: no such file or directoryiostream:没有这样的文件或目录
【发布时间】:2013-04-08 21:05:34
【问题描述】:

我正在使用 Windows vista 上的 Qt creator。我正在尝试编译一个非常简单的“.cpp”代码,其中包含标准 c++ 库“iostream”,如下所示:

#include <iostream>
using namespace std;
int main(){
    cout << "thanks";
    return 0;
}

问题甚至在编译代码之前就出现了,它出现在 Qt 突出显示库并承认我的时候(iostream:没有这样的文件或目录)。

几天前它运行良好,然后我安装了 VS-Express-2012,然后我将其卸载,因为令人惊讶的是,它不适用于 Windows Vista。在删除 VS-2012 后,Qt 创建者不再看到 c++ 库。

请注意,我仍然可以通过命令行控制台编译和运行我以前编写的代码,这意味着在删除 VS-2012 后,c++ 库并没有被删除!!。此外,我以前的所有代码(在使用相同 Qt 创建的旧项目中)都没有这样的问题(即:Qt 识别并查看标准库),我仍然可以使用 Qt creator 正常编译和运行它们,即使当我在这些旧项目中创建了一个新的“.cpp”文件:

.. 但是,当我在一个全新的项目中创建一个新的“.cpp”文件时,库消失并且链接丢失:

..(我不想习惯每次在编译器遇到类似问题时都重新安装 Qt,我想首先了解为什么会发生这种情况)

那么,Qt 到底在寻找什么(或者我应该在哪里寻找?),谢谢

【问题讨论】:

  • 从 Qt Creator 编译时是否编译?
  • @sftrabbit: 不,我不能编译它.. 此外,运行和调试按钮都是无效的
  • 在我看来,卸载 Visual Studio 会带走你的 C++ 工具链。您可能需要重新安装 Qt SDK。
  • 您可以在 Qt Creator 的选项中查看使用了哪个版本的 Qt。您应该验证它,和/或更改为您计算机上的另一个版本。您也可以重新安装 Qt。
  • @Synxis:我的 Qt creator 版本是 2.6.2(基于 Qt 5.0.1),但是由于我可以从我的 Qt creator 帮助中读取它,这意味着它已经过验证,不是是吗?

标签: c++ windows qt iostream


【解决方案1】:

您无需重新安装 Qt creator。如果你想用它来运行 C++ 源代码,你应该首先创建一个项目文件。执行以下操作:

文件 -> 新文件或项目 -> 非 Qt 项目 -> 普通 C++ 应用程序;

这样您就可以创建一个 .pro 文件。然后Qt creator就可以找到之类的库文件了。详细解释见https://stackoverflow.com/a/9613956/5383964。

【讨论】:

  • 我也是这样做的。即使是自动编写的#include ,它也会显示“iostream:没有这样的文件或目录”消息,并带有下划线。但我可以编译并运行我的应用程序。
【解决方案2】:

首先在 Qt Creator 中打开您的项目文件(“.pro”)并添加下一行:

INCLUDEPATH += /usr/include/c++/{gcc_version}/

然后尝试在你的代码中使用#include &lt;iostream&gt;

对我来说 INCLUDEPATH 是 /usr/include/c++/4.7.3/

【讨论】:

    【解决方案3】:

    这个问题发生在我们刚刚安装 Qt 之后,使用的是应该与 .net 编译器一起使用的版本的安装程序。 .net 安装未完成:未安装 C++ 开发功能。我们完成了.net的安装,重启了Qt,问题就解决了:Qt自动检测到新安装的编译器程序,找到了。 请注意,对于某些机器,我们需要以管理员身份启动 Qt 才能完成这项工作。

    【讨论】:

      猜你喜欢
      • 2012-02-26
      • 1970-01-01
      • 2014-06-26
      • 2012-05-03
      • 2021-06-24
      • 2015-02-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多