如何使用 x64 运行 cl?

ssp*_*spp 6 c++ batch-file visual-c++ cl

我遇到了与这里相同的问题fatal error C1034: windows.h: no include path set

我输入vcvars32.bat并解决了我的问题,但我想链接一些 64 位 .lib 文件,当我这样做时:

cl main.cpp xxxlib.lib
Run Code Online (Sandbox Code Playgroud)

我得到:

warning LNK4272: library machine type 'x64' conflict with target machine type 'x86'
Run Code Online (Sandbox Code Playgroud)

是不是因为我用的vcvars32.bat是32位的?在哪里可以找到 64 位版本?

谢谢

dha*_*ann 3

为了确保设置了正确的环境变量,最简单的方法是在开始菜单中启动相应的命令 shell。

对于 64 位,这将是Visual Studio x64 Win64 Command Prompt (2010),然后 cl.exe 会自动正确。如果您在开始菜单中显示此条目的属性,您还将找到更多信息:

  • 开始位置:“C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\”
  • 目标 :%comspec% /k ""C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat"" amd64

由此,您可以看到工作目录已设置,并vcvarsall.bat使用参数进行调用amd64。这可能就是你错过的。