在 64 位机器上构建 32 位 Qt 应用程序

use*_*776 4 c++ qt

我使用 Windows 7 64 位 QT 5.9.1 和编译器 MSCV 2017 64 位。

我正在尝试在此环境中构建 32 位应用程序并链接到 32 位库,但我似乎无法通过正确的选项组合来实现此目的,我也不知道这是否可能。

我见过一些解决方案使用

目标= 32位二进制

QMAKE_CXXFLAGS += -m32

但我似乎不知道如何使其适应这种环境。有小费吗?

编辑:我还应该提到,我没有互联网访问权限,也没有我正在使用的计算机的管理员权限,因此不可能安装新版本。

我的项目也是一个包含 3 个不同 .pro 文件的子目录项目。当我对一个专业文件进行一项更改时,我通常会将更改应用到所有文件。

编辑2:这是为了解决错误

LNK4272:库机器类型“x86”与目标机器类型“x64”冲突

LNK2019:函数中引用的外部符号无法解析

我相信一旦我可以在 32 位中编译它,这些错误就会消失,但我不确定情况是否如此。

编辑3:我确实有一个32位版本的qt,但它在MINGW中,所以它无法正确找到QMAKE_MSC_VER等等。如果有任何关于如何使其与 MSCV2017 一起工作的提示,我们将不胜感激。

Arn*_*rah 5

为了解决这个问题,你需要一个32位的Qt套件。为此,您必须前往Tools > Options > Build & Run > Kits. 但是,如果您刚刚安装了 Qt 64 位,则该套件很可能不可用。因此,您应该从 启动 Qt Maintenanceenance Tool Start -> Programs -> Qt -> Qt Maintenance Tool。从这里开始,您必须跳过 Qt 登录,除非您使用的是 Qt 的商业版本,然后单击Add or remove components。现在您应该选择所需的套件(Qt 32 位),Qt 将自动安装这些套件。完成后,您可以返回“套件”菜单并添加它们。