win64上的Makefile

win64上的Makefile,makefile,windows64,Makefile,Windows64,我正在Windows 64上工作,我们需要为我们的项目创建一个makefile。我们已有Win 32的makefile,不知道如何从makefile设置64位环境。 如果有人这样做了,或者有任何Win64的示例makefile,请与我共享。 我们得到以下错误 c:\program files (x86)\microsoft visual studio 9.0\vc\include\codeanalysis\sourceannotations.h(17) : error C2371: 'size_

我正在Windows 64上工作,我们需要为我们的项目创建一个makefile。我们已有Win 32的makefile,不知道如何从makefile设置64位环境。
如果有人这样做了,或者有任何Win64的示例makefile,请与我共享。 我们得到以下错误

c:\program files (x86)\microsoft visual studio 9.0\vc\include\codeanalysis\sourceannotations.h(17) : error C2371: 'size_t' : redefinition; d
ifferent basic types
        predefined C++ types (compiler internal)(19) : see declaration of 'size_t'
C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\winnt.h(81) : fatal error C1189: #error :  "No Target Architecture"
make[3]: *** [shared/anonObject.o] Error 2
这主要是在VS x64位配置未设置时发生的。

如果未定义
\u AMD64\uu
\u IA64\u
,则预处理器会抛出该错误(无目标体系结构),我相信这可能提示您设置了错误的目标体系结构(应该通过将
/MACHINE:X64
传递到
cl
)来完成,或者您正在使用一个非常奇特的

我不知道关于64位兼容的任何其他专业,当然,除了您需要运行64位版本的
cl
VC\bin\amd64
)之外

为此,还要记住使用64位libs而不是32位libs进行链接。 它们可以在各自的
lib\x64
(Windows SDK)和
lib\amd64
(Visual Studio)文件夹中找到


size\u t
已经定义的事实可能可以使用

#define _SIZE_T_DEFINED

在包含
sourceannotations.h
之前。您自己定义
size\t
吗?这是在
windows.h
中完成的,它应该会自动定义上面的内容。

我在命令提示符下设置64位环境,然后使用/MACHINE:X64选项运行makefile。

/MACHINE:X64仍然不工作,需要在链接时执行此操作时间。我不知道如何在make文件中设置Win 64配置(sln文件中的x64配置)。命令是“C:\Program Files(x86)\Microsoft Visual Studio 9.0\VC>vcvarsall.bat x86\u amd64”