我目前正在按照Compiling 64-bit extension modules on Windows中的说明在 Windows 上构建 64 位扩展。
我想编写这个脚本,所以我不必每次都打开 Windows SDK 命令外壳,所以我有一个批处理文件:
setlocal EnabledDelayedExpansion
CALL "C:\Program Files\Microsoft SDKs\Windows\v7.0\Bin\SetEnv.cmd" /x64 /release
set DISTUTILS_USE_SDK=1
\path\to\python.exe \path\to\setup.py bdist --format=msi
但是,我得到了这些错误。我如何cl.exe
重回正轨?
Could not locate executable cl.exe
Executable cl.exe does not exist
公平的警告,我对在 Windows 上构建扩展知之甚少,从这篇文章中可以明显看出,所以如果有的话,请提出更好的方法。
编辑:对 SetEnv.cmd 的原始调用确实会引发错误。
The x64 compilers are not currently installed.
Please go to Add/Remove Programs to update your installation.
.
Setting SDK environment relative to C:\Program Files\Microsoft SDKs\Windows\v7.0
.
The system cannot find the batch label specified - Set_x64
然后,我根据系统路径使用的各种命令会出现一些错误(例如,对 git 的子进程调用它找不到 git)。
CL.exe 安装在此处C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\Bin\amd64\cl.exe
。如果我只是通过快捷方式打开 Windows SDK Cmd Shell 并从这里按通常的方式安装,就可以找到它。