我正在将项目从Win32移植到Win64位。我们正在使用make文件获取以下错误
1> c:\ program files(x86)\ microsoft visual studio 9.0 \ vc \ include \ codeanalysis \ sourceannotations.h(17):error C2371:'size_t':redefinition;不同的基本类型1> binding.cpp:请参阅'size_t'的声明
C:\Program Files\Microsoft SDKs\Windows\v6.0A\Include\winnt.h(81) : fatal error C1189: #error : "No Target Architecture"
我们正在跟随以下CFLAGS:
1> cl.exe / nologo / MTd / GR / W3 / Zi / EHsc / Od / I“.... \ include”/ I“C:\ Program Files(x86)\ Microsoft Visual Studio 9.0 \ VC \ include”/ I “C:\ Program Files(x86)\ Microsoft Visual Studio 9.0 \ VC \ PlatformSDK \ include”/ I“C:\ Program Files \ Microsoft SDKs \ Windows \ v6.0A \ Include”/ D_X86_ / D_WIN64 / D_WIN32 / D“ _DEBUG“/ D”_WINDOWS“/ D_CRT_SECURE_NO_WARNINGS / Fo”。\ Debug \“/ Fd”。\ Debug \“/ FD / c”test.cpp“
我不知道我错过了什么设置。
答案 0 :(得分:3)
标头winnt.h期望在尝试以64位模式编译代码时定义_AMD64_
或_IA64_
。
如果使用正确的编译器,它们可能由编译器自动设置。检查您是否使用64位版本的cl.exe。