繁体   English   中英

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

[英]Build 32 bit Qt application on 64 bit machine

我将Windows 7 64位QT 5.9.1与编译器MSCV 2017 64位一起使用。

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

我看过一些解决方案的使用

目标= 32bit_binary

QMAKE_CXXFLAGS + = -m32

但我似乎无法弄清楚如何使其适应这种环境。 有小费吗?

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

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

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

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

LNK2019:函数中引用了未解析的外部符号

我相信,一旦可以将其编译为32位,这些错误就会消失,但是我不确定是否是这种情况。

编辑3:我确实有32位版本的qt,但是它在MINGW中,因此它无法正确找到QMAKE_MSC_VER,以此类推。 如果有任何使其与MSCV2017一起使用的提示,将不胜感激。

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

您应该在Qt Creator中创建一个32位套件,以生成32位可执行文件。

要配置您的套件,请转到: Tools > Options > Build & Run > Kits

之后,您可以激活项目的工具包。

我相信要放入您的.pro文件的规范文本是这样的:

CONFIG -= x86_64
CONFIG += x86

(第一行确保不会生成64位二进制文​​件,第二行确保将不会生成32位二进制文​​件)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM