Qt应用程序不是有效的32位应用程序

问题描述:

我做了一个简单的Qt应用程序。在PC上一切正常。我使用Windows 7 SP1和Qt Creator进行构建和调试。当我尝试在Win XP上运行我的程序时,出现错误“不是有效的32应用程序”。我在使用Visual Studio 2012制作应用程序时遇到了同样的问题。但是,我使用Visual Studio修复了这个问题。在工具 - >选项我让它编译为Win XP。而且所有的东西都在我的电脑上和XP上的电脑上工作。但是我在Qt Creator中找不到这样的选项。我如何在Windows XP上运行我的应用程序?Qt应用程序不是有效的32位应用程序

+0

狂猜:你可能编译了64位代码。尝试找到一个选项(架构应该是i386或x86,而不是amd64或x86_64) – Guido

+0

找不到这样的选项。但是我制作应用程序的Windows 7也是32位的,一切正常。 – user3038079

+0

什么是您的家庭设置? Qt创建者使用SDK吗? – UmNyobe

Qt-Creator是唯一的IDE,它使用你告诉它使用的编译器(我假设它将VS2012在你的情况下)。

你可以在你的其他VS2012解决方案中检查编译器/链接器标志,它们会有所作为(当你设置编译器/链接器的命令行输入时,设置“Win XP选项编译”时会发生什么变化)在你的Qt .pro文件中。

您可以在VS2012项目中分别转到项目属性 - > C/C++ - >命令行和链接器 - >通讯行来查看编译器/链接器的实际输入。

您可以在Qt分别QT的.pro文件中使用

QMAKE_CXXFLAGS += 

QMAKE_LFLAGS += 

设置编译器/连接器选项。

+0

我试过了,但是我找不到那个选项。这就是我在VS2012上所做的http://software.intel.com/zh-cn/articles/linking-applications-using-visual-studio-2012-to-run-on-windows-xp但是没有任何选项那在Qt Creator – user3038079

+0

请参阅编辑。我怀疑qt-creator会有一个复选框选项,因为它是跨平台的,并没有专注于vs2012,但是您肯定可以手动配置适当的设置。 –

+0

我应该在哪里写? – user3038079