【问题标题】:can we use Qt(64) to produce an application that will work on both 32bit windows and 64bit windows?我们可以使用 Qt(64) 生成一个可以在 32 位窗口和 64 位窗口上运行的应用程序吗?
【发布时间】:2013-10-08 12:46:41
【问题描述】:

http://qt-project.org/downloads 。我下载了 openGL,因为很多人说这个标准更好。但现在我的教授要求我提供可以在 Windows 32/64 上运行的东西。有什么方法可以让我不必为 windows 32 安装 Qt 并生成可以在 windows 32 上运行的应用程序?

我的意思是我只为 win64 安装了 Qt,但现在我想要一些可以在 win32 平台上运行的东西。所以我想一种方法是为win32安装Qt并创建一个新项目。但是我想问一下我是否可以使用我的 com 上安装的 Qt on win64 进行一些配置并产生可以在 win32 上运行的东西

谢谢!

【问题讨论】:

  • 不,你不能在没有 win32 Qt 运行时的情况下运行 win32 Qt 应用程序。你有什么论据来创建 x64 应用程序吗?为什么你不能创建简单的 win32 应用程序?注意:所有 win32 应用都将在 win64 上运行。
  • 我说的是我只为win64安装了Qt,但现在我想要一些可以在win32平台上运行的东西。所以我想一种方法是为win32安装Qt并创建一个新项目。但是我想问一下我是否可以做一些配置并使用我的com上安装的Qt on win64 生成可以在win32上运行的东西@DmitrySazonov
  • 您可以在 32 位系统上安装 x64 操作系统(如果您的 CPU 支持)。或者您可以在虚拟机上安装 x64 操作系统。但是为 32 位操作系统编译程序并使用 32 位版本的 Qt 会容易得多。
  • @Dmitry Sazonov 我们可以使用 Qt add in 让 VS 同时拥有 64 位和 32 位吗?
  • 它不依赖于 Qt Addin。首先,你应该了解一些基础知识:什么是编译器、IDE、目标平台、插件。

标签: c++ windows qt winapi windows64


【解决方案1】:
  1. 对于 Windows Vista 及更高版本,没有理由不使用与 Qt 捆绑的 OpenGL 的 ANGLE 实现。 “很多人说这个标准更好”——这是错误的,除非你能保证你的客户在他们的机器上安装了一个体面的支持 OpenGL 的显卡驱动程序。我建议忘记系统 OpenGL,并使用 ANGLE 实现。

  2. 如果您确实需要 64 位地址空间,那么为 32 位和 64 位 Qt 编译您的项目很简单。对于许多应用程序来说,根本没有理由提供 64 位版本。

【讨论】:

  • 感谢您的回复。并对我对 OpenGL 的误解深表歉意。我安装它的唯一原因是我想尝试一些新的东西。当然,有些计算机可能不完全支持 OpenGL。但这不是重点。我使用 64 位版本,因为我的 com 是 64 位的,我想 64 位可能比 32 位版本运行得快一点。当然 32 位应用程序应该可以在 64 位机器上正常工作
  • @JunchaoGu 为什么你认为64位程序会运行得更快?主要区别在于 64 位程序没有 2 GB 的虚拟内存限制。
  • @JunchaoGu:如果你认为某些东西更快,你最好有测量来显示差异。否则你只是在编造幻想。不幸的是,周围有很多这样的幻想。
【解决方案2】:

不,你不能直接这样做。 在 32 位 Windows 上启动 64 位应用程序的唯一方法是使用模拟器和虚拟机,例如 VMWare。但它会降低应用程序的性能。

【讨论】:

  • 所以我应该将我的应用程序编译为 x86 吗?但是除了在我的 com 上安装 Qt for x86(我现在有 Qt for x64)之外,还有什么简单的方法可以实现这一点?
  • x86 处理器对 x64 命令集一无所知,所以是的,您需要将您的应用程序编译为 x86。 Qt 库也应该是 x86。
猜你喜欢
  • 2014-06-20
  • 1970-01-01
  • 2012-08-11
  • 1970-01-01
  • 2013-04-28
  • 1970-01-01
  • 1970-01-01
  • 2014-10-21
  • 2013-11-24
相关资源
最近更新 更多