【问题标题】:windows: unable to install kivy on virtual enviromentwindows:无法在虚拟环境中安装kivy
【发布时间】:2018-01-30 23:01:43
【问题描述】:

我的系统上安装了 kivy,但我的虚拟环境需要旧版本。 我收到以下错误:

命令cl.exe 失败:没有这样的文件或目录。

cl.exe 已添加到我的系统PATH。我已经在我的电脑上安装了 Kivy,没有任何错误,可以正常使用。

我的问题是尝试在虚拟环境中安装它。我正在尝试使用安装

python -m pip install kivy=="1.8.0"
pip install kivy=="1.8.0"

我可以毫无问题地将 Kivy 1.10 安装到 venv

【问题讨论】:

  • 我的系统上安装了 kivy。我的问题是尝试将另一个版本的 kivy 安装到 venv。
  • cl.exe 在 PATH 中吗?
  • 是的。我能够在我的系统上安装 kivy,然后我决定创建一个 venv,这样我就可以使用旧版本的 kivy,那是我第一次遇到这个问题的时候,所以我将 cl.exe 添加到 PATH,然后给了我另一个io.h 的错误无法识别等。
  • 那么您应该edit 提问并提供更多信息:您尝试了哪些命令以及出现了哪些错误。 'cl.exe' failed: No such file or directory. 肯定是不够的。 PS。我撤销了结束问题的投票。

标签: windows kivy virtualenv python-3.5


【解决方案1】:

cl.exe 已添加到我的系统路径

绝对不行,否则你会得到一个不同的错误。也许你有一个 Python 的自定义加载器(例如.bat 文件)。你写你使用virtualenv,因此你需要将cl.exe所在的文件夹添加到PATH并且你激活virtualenv之后。例如:

C:\> env_folder\Scripts\activate.bat
C:\> set PATH=%PATH%;"cl.exe folder"
C:\> cl.exe /?

还要注意,这是设置cl.exe 路径的一种非常不幸的方式,因为它是一个支持多个 平台的编译器。如果您列出 bin 文件夹,您将看到多个其他以编译器支持的拱门命名的文件夹,并且每个文件夹都有自己的 cl.exe

您作为编译器用户应该按照文档中的说明启动它(或承担后果),因此请选择官方启动器之一。如果您使用 Visual C++ 构建工具,启动器位于

C:\Program Files (x86)\Microsoft Visual C++ Build Tools

vcvarsall.bat来自:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC

当然替换为您的 MSVC 版本。

也就是说,对 MSVC(cl.exe 编译器)对 Python 3.5+ 的支持最近才在 Kivy 中与1.10.0 一起引入,因此即使您将该二进制文件正确地放在您的路径(您必须在 virtualenv 中运行 vcvarsall.bat)您很可能会遇到很多错误,并且由于它不受官方支持,您最终会自己遇到错误。

您可以做的是使用用于该特定版本 Kivy 的编译器,即用于该版本的 MinGWPy(repo) + find the installation instructions。如果我没记错的话,当时pygame 仍然是主要的视频提供商(现在是SDL2)。

【讨论】:

    猜你喜欢
    • 2017-02-26
    • 2015-05-24
    • 2020-06-03
    • 2018-04-19
    • 2017-04-10
    • 2019-04-27
    • 2018-02-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多