pip freeze命令未显示安装的软件包

6
例如,如果您像这样使用pip安装Tornado后:
pip install tornado
Collecting tornado
...
Successfully installed backports-abc certifi singledispatch six tornado

pip freeze 命令不会在列表中返回 tornado 包,它只会显示如下内容:

PyMySQL==0.7.2

当我运行easy_install时,它会返回:

error: bad install directory or PYTHONPATH

You are attempting to install a package to a directory that is not
on PYTHONPATH and which Python does not read ".pth" files from.  The
installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was:

    /lib/python2.7/site-packages/

and your PYTHONPATH environment variable currently contains:

    ''

发生了什么问题?
3个回答

5
使用virtualenvwrapper或其他虚拟环境(也许不是你的情况,但这就是我提出这个问题的原因),您可能已经使用sudo安装了一些东西,这将为整个系统安装它们。(请参见此处)因此,pip freeze实际上正在工作,您只是还没有使用该pip安装任何内容。

1
  1. I suppose reinstalling pip may help you:

    pip install --upgrade pip
    
  2. To fix easy_install problem add /lib/python2.7/site-packages/ to your PYTHONPATH:

    export PYTHONPATH=$PYTHONPATH:/lib/python2.7/site-packages/
    

好运!


0

升级pip,它就能正常工作了。我曾经遇到过完全相同的问题。在我的情况下,问题并不是与"sudo"有关,而是通过pip install --upgrade pip升级pip解决了这个问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接