pip如何找到依赖项?

时间:2017-02-03 17:10:36

标签: python installation pip

我试图在没有root访问权限的计算机上安装一些带有pip的软件包。我遇到了依赖项的一些问题。基本上,我安装了一个包1:

cd path/to/package1
pip install . --install-option="--prefix=path/to/my/install/dir"

但是当我尝试安装包2时:

cd path/to/package2
pip install . --install-option="--prefix=path/to/my/install/dir"

找不到包1.如何设置查找依赖项的目录?

2 个答案:

答案 0 :(得分:2)

尝试使用virtualenv - 它使包管理正确。

这样,您首先要创建virtualenv:

 $ virtualenv aaa
 Using base prefix '/Users/el/.pyenv/versions/3.5.1'
 New python executable in /Users/el/tmp/aaa/bin/python3.5
 Also creating executable in /Users/el/tmp/aaa/bin/python
 Installing setuptools, pip, wheel...done.

然后

$ source aaa/bin/activate

这将设置环境变量,并且所有新安装pip都将在此文件夹中执行。

完成工作后,只需执行以下操作:

$ deactivate

现在你从virtualenv退出到通常的“系统”之一。

结果:

  • 您的环境与操作系统的环境隔离
  • 您不能破坏系统库
  • 您可能对不同的程序有不同的virtualenvs。他们可能有不兼容的模块
  • 您可以使用pip freeze > requirements.txt轻松修复模块版本。现在,这个文件包含所有带有固定版本的模块,格式简单:

    appdirs==1.4.0
    packaging==16.8
    pyparsing==2.1.10
    six==1.10.0
    
  • 您可以从头开始重新创建此环境,只需使用:

    $ virtualenv folder 
    $ source ./folder/bin/activate
    $ pip install -r requirements.txt
    

答案 1 :(得分:0)

这并没有真正回答这个问题,但确实解决了根本问题---使用

安装
pip install . --user 

将所有内容安装在pip知道要查看的本地目录中。