在python 2.7.12中无法找到vcvarsmall .bat



我对python很陌生,我想在Windows 64位上使用python 2.7.12的模块"lic_internal",但我得到以下错误:

Traceback (most recent call last):
  File "04_report.py", line 32, in <module>
import utils_show as ushow
  File "./libsutils_show.py", line 45, in <module>
import lic_internal
  File "D:ProgrammePython27libsite-packagespyximportpyximport.py", line 445, in load_module language_level=self.language_level)
  File "D:ProgrammePython27libsite-packagespyximportpyximport.py", line 234, in load_module exec("raise exc, None, tb", {'exc': exc, 'tb': tb})
  File "D:ProgrammePython27libsite-packagespyximportpyximport.py", line 216, in load_module inplace=build_inplace, language_level=language_level)
  File "D:ProgrammePython27libsite-packagespyximportpyximport.py", line 192, in build_module reload_support=pyxargs.reload_support)
  File "D:ProgrammePython27libsite-packagespyximportpyxbuild.py", line 102, in pyx_to_dll dist.run_commands()
  File "D:ProgrammePython27libdistutilsdist.py", line 953, in run_commands self.run_command(cmd)
  File "D:ProgrammePython27libdistutilsdist.py", line 972, in run_command cmd_obj.run()
  File "D:ProgrammePython27libsite-packagesCythonDistutilsbuild_ext.py", line 164, in run _build_ext.build_ext.run(self)
  File "D:ProgrammePython27libdistutilscommandbuild_ext.py", line 339, in run self.build_extensions()
  File "D:ProgrammePython27libsite-packagesCythonDistutilsbuild_ext.py", line 172, in build_extension self.build_extension(ext)
  File "D:ProgrammePython27libdistutilscommandbuild_ext.py", line 498, in build_extension depends=ext.depends)
  File "D:ProgrammePython27libdistutilsmsvc9compiler.py", line 474, in compile self.initialize()
  File "D:ProgrammePython27libdistutilsmsvc9compiler.py", line 384, in initialize vc_env = query_vcvarsall(VERSION, plat_spec)
  File "D:ProgrammePython27libdistutilsmsvc9compiler.py", line 272, in query_vcvarsall raise DistutilsPlatformError("Unable to find vcvarsall.bat")
ImportError: Building module lic_internal failed: ['DistutilsPlatformError: Unable to find vcvarsall.batn']

我已经安装了"Visual c++ for Python 2.7",并试图更改"Python27libdistutilsmsvc9compiler.py"中的路径,如下所示:

def query_vcvarsall(version, arch="x86"):
"""Launch vcvarsall.bat and read the settings from its environment
"""
vcvarsall = find_vcvarsall(version)
vcvarsall = "C:/Users/Christian/AppData/Local/Programs/Common/Microsoft/Visual C++ for Python/9.0" + "/vcvarsall.bat"
interesting = set(("include", "lib", "libpath", "path"))

这意味着我在"vcvarsmall"中保存了确切的路径。

然后得到以下错误:

Traceback (most recent call last):
File "04_report.py", line 32, in <module> import utils_show as ushow
File "./libsutils_show.py", line 45, in <module> import lic_internal
File "D:ProgrammePython27libsite-packagespyximportpyximport.py", line 445, in load_module language_level=self.language_level)
File "D:ProgrammePython27libsite-packagespyximportpyximport.py", line 234, in load_module exec("raise exc, None, tb", {'exc': exc, 'tb': tb})
File "D:ProgrammePython27libsite-packagespyximportpyximport.py", line 216, in load_module inplace=build_inplace, language_level=language_level)
File "D:ProgrammePython27libsite-packagespyximportpyximport.py", line 192, in build_module reload_support=pyxargs.reload_support)
File "D:ProgrammePython27libsite-packagespyximportpyxbuild.py", line 102, in pyx_to_dll dist.run_commands()
File "D:ProgrammePython27libdistutilsdist.py", line 953, in run_commands self.run_command(cmd)
File "D:ProgrammePython27libdistutilsdist.py", line 972, in run_command cmd_obj.run()
File "D:ProgrammePython27libsite-packagesCythonDistutilsbuild_ext.py", line 164, in run _build_ext.build_ext.run(self)
File "D:ProgrammePython27libdistutilscommandbuild_ext.py", line 339, in run self.build_extensions()
File "D:ProgrammePython27libsite-packagesCythonDistutilsbuild_ext.py", line 172, in build_extensions self.build_extension(ext)
File "D:ProgrammePython27libdistutilscommandbuild_ext.py", line 498, in build_extension depends=ext.depends)
File "D:ProgrammePython27libdistutilsmsvc9compiler.py", line 549, in compile raise CompileError(msg)  
ImportError: Building module lic_internal failed: ["CompileError: command 'C:\\Users\\Christian\\AppData\\Local\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\cl.exe' failed with exit status 2n"]

此外,我的计算机上安装了Visual c++ 2013,但当我下载了python的c++编译器包时,它不应该是必要的,对吧?

如果您仍然有这个问题,我通过卸载系统中的其他python来解决它。为了保证,您需要使用https://stackoverflow.com/a/30272728/7497110定义要使用的python的路径,然后打开msvc9compiler.py并执行https://github.com/cython/cython/wiki/CythonExtensionsOnWindows。然后你可能会遇到众所周知的头问题(即*.h没有这样的文件或目录)。在这种情况下,您可以使用http://www.pythonlibrary.org/notes/open_glcontext_notes.htm中的说明。记住要更新python,尤其是distutils和numpy。如果问题解决了,请告诉我。

最新更新