2010-11-09 67 views
0

我参考了一些包含对平台sdk的依赖的包含。当我将下面的行添加到我的QT造物主临文件,并尝试编译它抛出混乱的错误:在QT Creator中包含Platform SDK

INCLUDEPATH += "C:\Program Files\Microsoft Platform SDK\Include"

的错误是:

c:\Program Files\Microsoft Platform SDK\Include/winnt.h:666: error: #error Must define a target architecture.

c:\Program Files\Microsoft Platform SDK\Include/oaidl.h:442: error: pasting "/" and "/" does not give a valid preprocessing token

c:\Program Files\Microsoft Platform SDK\Include/oaidl.h:457: error: pasting "/" and "/" does not give a valid preprocessing token

c:\Program Files\Microsoft Platform SDK\Include/propidl.h:310: error: pasting "/" and "/" does not give a valid preprocessing token

c:\Program Files\Microsoft Platform SDK\Include/oaidl.h:442: error: expected unqualified-id before '/' token

c:\Program Files\Microsoft Platform SDK\Include/oaidl.h:457: error: expected unqualified-id before '/' token

c:\Program Files\Microsoft Platform SDK\Include/propidl.h:310: error: expected unqualified-id before '/' token

任何帮助是极大的赞赏

回答

1

尝试用\替换\。

+0

这没有帮助的情况,但谢谢你的想法。 – Rufius 2010-11-09 17:03:56

0

我可以解释第一个错误。 winnt.h正期待着一个#define以下任何一个,以及更多,对应于目标体系结构:_M_IX86 _M_IA64 _M_AMD64 _M_ARM有一些这些。这适用于winnt.h的Windows SDK 8.0(2012年11月)版迭代。

您可以在项目文件(而不是代码中)中定义此项,如果您有不同的构建配置,这可能会很有用。向您的项目(.pro)文件中添加一个类似的行。

intelsixtyfourbitbuild:DEFINES += _M_IA64 

将开始部分从冒号(:)包含在内,不管是否构建都定义。