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

Qt应用程序不是有效的32位应用程序,qt,Qt,我制作了一个简单的Qt应用程序。在mt PC上一切正常。我使用Windows7SP1和QtCreator进行构建和调试。当我试图在Win XP上运行我的程序时,我得到的错误不是一个有效的32应用程序。我在使用Visual Studio 2012制作应用程序时也遇到了同样的问题。但是我用VisualStudio解决了这个问题。在工具->选项中,我让它为WinXP编译。我的电脑和XP电脑上的一切都正常工作。但我在Qt Creator中找不到这样的选项。如何在Windows XP上运行我的应用程序?Q

我制作了一个简单的Qt应用程序。在mt PC上一切正常。我使用Windows7SP1和QtCreator进行构建和调试。当我试图在Win XP上运行我的程序时,我得到的错误不是一个有效的32应用程序。我在使用Visual Studio 2012制作应用程序时也遇到了同样的问题。但是我用VisualStudio解决了这个问题。在工具->选项中,我让它为WinXP编译。我的电脑和XP电脑上的一切都正常工作。但我在Qt Creator中找不到这样的选项。如何在Windows XP上运行我的应用程序?

Qt Creator是唯一的IDE,它使用的是您告诉它使用的编译器。我假设您使用的是VS2012

您可以检查其他VS2012解决方案中的编译器/链接器标志,当您查看编译器/链接器的命令行输入时,为Win XP设置选项compiling时,这些标志会对更改产生影响,并在Qt.pro文件中设置相同的标志

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

您可以使用设置qt中的编译器/链接器标志

QMAKE_CXXFLAGS += 


分别在qt.pro文件中。

Wild guess:您可能编译了64位代码。尝试找到此体系结构的选项应为i386或x86,而不是amd64或x86\u 64找不到此类选项。但我的Windows7也是32位的,一切都正常。你的家庭设置是什么?是Qt creator和SDK吗?嗯,我怎么能检查呢?我不记得以SDK的名义下载过任何东西,我尝试过,但在那里找不到该选项。这是我在VS2012上所做的,但在Qt Creator中没有类似的选项请参见编辑。我怀疑qt creator是否会有一个复选框选项,因为它是跨平台的,并且不关注vs2012,但您肯定可以手动配置正确的设置。我应该在哪里写它?以及什么?如果我在那里写这篇文章,我将能够在Win XP中运行它?您需要找出哪些编译器和链接器标志起作用,并通过qt make文件传递这些标志。我在上面的答案中解释了如何解决这个问题。你需要做一些工作来找出哪些标志,如果你在那里写这个,当然不会起作用。
QMAKE_LFLAGS +=