4.68 FAQ-1081 当安装Python包时遇到“Could not install packages due to an EnvironmentError...”错误该如何解决?

Last Update: 4/16/2021

当安装 Python 包时(不管是从 Python包 菜单还是在 脚本窗口),您可能会碰上像下面一样的错误:

'ERROR: Could not install packages due to an EnvironmentError:
pip/_vendor/pep517/_in_process.py

这个问题可能是由于所安装的包只提供了 .tar.gz 格式的文件。如果是这样,您可以尝试用方案 1来解决。

方案 1

  1. 自行下载您想安装的包的 .*.tar.gz 文件。
  2. 在 Origin 的外部使用 pip 命令运行下面的命令(这需要安装好 Python),用于生成 *.whl 文件。
    pip wheel "FullFilePath.tar.gz" -w "FullTargetFileFolder"


    例如,您下载了包 laserbeamsize-1.7.1.tar.gz,并放于这个文件夹:C:\Users\myusername\Downloads\,那么您可以运行下面的命令在 C:\tmp 文件夹里生成 .whl 文件。

    pip wheel "C:\Users\myusername\Downloads\laserbeamsize-1.7.1.tar.gz" -w "C:\tmp"
  3. 启动 Origin,在 命令窗口 运行以下命令来安装这个包:
    pip install "FullFilePath.whl"


对于那些只有 .tar.gz 文件的包,而且是由C(或C++)来写的,上面的方案可能会解决不了,这时就可以试一下下面的方案 2。

方案 2

您需要安装 Windows 的编译器,如 Visual Studio,来编译文件,又或者您可以从一些公共网站上下载编译好的。

我们拿 xclimBottleneck 来举例子。

xclim 依赖于 Bottleneck,而 Bottleneck 只提供了 *.tar.gz 的文件。

  1. 从下面页面下载 Bottleneck-1.3.2-cp38-cp38-win_amd64.whl
    www.lfd.uci.edu/~gohlke/pythonlibs/#bottleneck
  2. 把下载的文件放到 C:\tmp\
  3. 启动 Origin,然后运行 LabTalk 脚本:
    pip install "C:\tmp\Bottleneck-1.3.2-cp38-cp38-win_amd64.whl" xclim


注意:如果您在公共网站上找不到包,您可以联系我们寻求帮助,或者安装 Visual Studio,然后尝试方案 1的步骤,方案 1可以成功构建 *.whl 文件。


Keywords:python, pypi, pip, tar.gz, whl, install fail, package, pep517, EnvironmentError,安装失败,环境错误,包