【问题标题】:Visual C++ for Python failed with exit status 2Visual C++ for Python 失败,退出状态为 2
【发布时间】:2016-09-06 22:47:11
【问题描述】:
  File "c:\users\user\appdata\local\temp\pip_build_user\ssdeep\.eggs\cff
i-1.8.2-py2.7-win32.egg\cffi\ffiplatform.py", line 65, in _build
    raise VerificationError('%s: %s' % (e.__class__.__name__, e))

cffi.ffiplatform.VerificationError: CompileError: command 'C:\\Users\\user\\
AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin
\\cl.exe' failed with exit status 2

正在清理... 命令 python setup.py egg_info 在 c:\users\

中失败,错误代码为 1

我不断收到此错误。我在这里尝试了多种其他解决方案,但没有运气。我是不是错过了什么。谢谢

【问题讨论】:

  • 您尝试通过 pip 安装的模块是什么?

标签: python-2.7 window


【解决方案1】:

一种粗略的方法对我有用。也许有知识的人可以优化答案:

  1. 阅读以下文章Link
  2. 我的是 Python 2.7。我按照文章安装了Visual 用于 python 2.7 的 C++ 编译器。 Install Link
  3. 这会在“%AppData%\Local\Programs\Common\Microsoft”中安装一个文件夹。
  4. 我复制了
    • “...\Visual C++ for Python\9.0\VC\include”到“C:\Python27\include”
    • “...\Visual C++ for Python\9.0\VC\lib”到“C:\Python27\libs”
    • "...\Visual C++ for Python\9.0\WinSDK\Include" 到 "C:\Python27\include"
    • “...\Visual C++ for Python\9.0\WinSDK\lib”到“C:\Python27\libs”
  5. 我在环境变量中编辑了路径以包含这两个目录(“C:\Python27\include”和“C:\Python27\libs”。我认为这一步不是必需的)。
  6. 编辑目录“C:\Python27\Lib\distutils”中的“msvc9compiler.py”
    • 第 #~270 行硬编码链接到“vcvarsall.bat”“%appdata%..\Visual C++ for Python\9.0\vcvarsall.bat”
    • 线号~394 os.environ['include'] = "C:\\Python27\\include"
    • 线# ~396 os.environ['lib'] = "C:\\Python27\\libs"
    • 第 # ~402 行硬编码了指向self.cc = "...\Visual C++ for Python\9.0\VC\Bin\cl.exe" 的链接(注意:它是\Bin 而不是\bin。)
    • Line # ~403 类似于上面的硬编码链接到 self.linker。

执行上述步骤对我有用。

【讨论】:

  • 第 4 步)我在环境变量中编辑了路径以包含这些目录。步骤 5) 编辑目录 C:\Python27\Lib\distutils 中的 msvc9compiler.py 行 # ~270 hard coded link to vcvarsall.bat "%appdata%\..\Visual C++ for Python\9.0\vcvarsall.bat" 行# ~394 os.environ['include'] = "C:\Python27\include" Line # ~396 os.environ['lib'] = "C:\\Python27\\libs" Line # ~402 硬编码链接到 self.cc = "...\Visual C++ for Python\9.0\VC\Bin\cl.exe" (注意:它是 \Bin 而不是 \bin。) 第 ~403 行硬编码了指向 self 的链接。链接器。执行上述步骤对我有用。
  • 您好,我正在尝试应用您的解决方案,但在第 6 步中停止了。您能否详细说明第 270 行的更改?我找不到更新路径的确切位置。
  • 致樱木,我刚看到你的消息。你找到解决方案了吗?如果不是,则第 270 行需要 vcvarsall.bat 的路径。相反,我硬编码了路径。如果此解释没有帮助,请将特定行发布到您的文件中。
猜你喜欢
  • 1970-01-01
  • 2023-03-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-22
  • 2018-02-07
  • 1970-01-01
相关资源
最近更新 更多