pip 安装选项“no-cache-dir”和“target”不能很好地协同工作?

N3d*_*3da 5 python pip facebook-prophet

我发现运行

pip install fbprophet --target=/tmp/foo --no-cache-dir

给出以下错误: ImportError: No module named pystan

但是,如果我删除--target--no-cache-dir选项,则它会成功安装。即以下两个命令都成功:

  1. pip install fbprophet --no-cache-dir

  2. pip install fbprophet --target=/tmp/foo

有人知道为什么会这样吗?

phd*_*phd 2

我确信问题既不在--target也不在--no-cache-dir。我在瞬态空虚拟环境中尝试了这两个命令(在每个命令后重新创建 venv),并收到了pip install fbprophet --target=/tmp/foo.

我相信问题出在 fbprophet 中setup.py:它在构建过程中导入 pystan,而不检查它是否可用或安装它。我认为可以通过将requirements.txt复制或移动pystan到.setup_requires

我怀疑你没有遇到这个问题,因为pip install fbprophet --no-cache-dir你已经pystan全局安装了。删除使用第一个命令安装的所有内容,然后重试第二个命令。或者在新的空虚拟环境中尝试它们。

发送拉取请求来解决问题。

我还认为你可以分两步安装:

pip install --target=/tmp/foo --no-cache-dir pystan
PYTHONPATH=/tmp/foo pip install --target=/tmp/foo --no-cache-dir fbprophet
Run Code Online (Sandbox Code Playgroud)