【问题标题】:Cross platform Qt project does not compile on windows because of errors in ostream and qiodevice.h由于 ostream 和 qiodevice.h 中的错误,跨平台 Qt 项目无法在 windows 上编译
【发布时间】:2014-09-29 22:16:25
【问题描述】:

我已经在我的 MAC 上使用 Qt 启动了一个跨平台桌面项目,并且可以正常编译。 现在,我正在尝试在安装了 Visual Studio 2010 的 Windows 7 PC 上编译相同的项目,但是我的项目中的两个文件出现了一些奇怪的错误。这是我单击构建时的错误屏幕截图:

还有这个:

如何解决这些构建问题?

【问题讨论】:

  • 我正在运行 Qt Creator 3.2.1(开源)
  • 它说宏“写”是在某处定义的
  • 正如 kotlomoy 所说,似乎有一个名为 write 的宏导致了 havok(还有一个名为 close 的宏,我猜还有其他可能导致冲突的宏)。根据write 宏的定义方式,您可以通过在编译器命令行选项上传递/Dwrite=xyzzy 来让编译器告诉您发生了什么。
  • @kotlomoy 是的,我有一个“发送”定义为“写入”,用于 Mac 和 Windows 构建之间的套接字可移植性。我删除了该行,错误消失了。您可以将您的回复作为答案发布,以便我接受吗?谢谢。
  • @Michael 谢谢迈克尔,就是这样。

标签: c++ qt visual-c++-2010


【解决方案1】:

它说宏“写”是在某处定义的

【讨论】:

    【解决方案2】:

    在您的代码中而不是使用qint64 使用qintptr

    【讨论】:

      猜你喜欢
      • 2014-04-07
      • 2021-02-03
      • 1970-01-01
      • 2015-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多