无法使用Pip安装任何软件包

时间:2016-03-27 08:58:36

标签: python python-2.7 pip

每当我运行命令pip install Django时,我都会收到以下错误跟踪,这意味着存在一些版本冲突。我尝试卸载然后安装相同的软件包,但是它会引发同样的错误。

Downloading/unpacking bcrypt (from Django)
  Downloading bcrypt-2.0.0.tar.gz
  Running setup.py (path:/tmp/pip_build_root/bcrypt/setup.py) egg_info for package bcrypt
    Traceback (most recent call last):
      File "<string>", line 17, in <module>
      File "/tmp/pip_build_root/bcrypt/setup.py", line 226, in <module>
        **keywords_with_side_effects(sys.argv)
      File "/usr/lib/python2.7/distutils/core.py", line 111, in setup
        _setup_distribution = dist = klass(attrs)
      File "/usr/local/lib/python2.7/dist-packages/distribute-0.6.28-py2.7.egg/setuptools/dist.py", line 225, in __init__
        _Distribution.__init__(self,attrs)
      File "/usr/lib/python2.7/distutils/dist.py", line 287, in __init__
        self.finalize_options()
      File "/usr/local/lib/python2.7/dist-packages/distribute-0.6.28-py2.7.egg/setuptools/dist.py", line 257, in finalize_options
        ep.require(installer=self.fetch_build_egg)
      File "/usr/local/lib/python2.7/dist-packages/distribute-0.6.28-py2.7.egg/pkg_resources.py", line 2029, in require
        working_set.resolve(self.dist.requires(self.extras),env,installer))
      File "/usr/local/lib/python2.7/dist-packages/distribute-0.6.28-py2.7.egg/pkg_resources.py", line 592, in resolve
        raise VersionConflict(dist,req) # XXX put more info here
    pkg_resources.VersionConflict: (certifi 2016.2.28 (/usr/local/lib/python2.7/dist-packages), Requirement.parse('certifi==2015.11.20'))
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):

  File "<string>", line 17, in <module>

  File "/tmp/pip_build_root/bcrypt/setup.py", line 226, in <module>

    **keywords_with_side_effects(sys.argv)

  File "/usr/lib/python2.7/distutils/core.py", line 111, in setup

    _setup_distribution = dist = klass(attrs)

  File "/usr/local/lib/python2.7/dist-packages/distribute-0.6.28-py2.7.egg/setuptools/dist.py", line 225, in __init__

    _Distribution.__init__(self,attrs)

  File "/usr/lib/python2.7/distutils/dist.py", line 287, in __init__

    self.finalize_options()

  File "/usr/local/lib/python2.7/dist-packages/distribute-0.6.28-py2.7.egg/setuptools/dist.py", line 257, in finalize_options

    ep.require(installer=self.fetch_build_egg)

  File "/usr/local/lib/python2.7/dist-packages/distribute-0.6.28-py2.7.egg/pkg_resources.py", line 2029, in require

    working_set.resolve(self.dist.requires(self.extras),env,installer))

  File "/usr/local/lib/python2.7/dist-packages/distribute-0.6.28-py2.7.egg/pkg_resources.py", line 592, in resolve

    raise VersionConflict(dist,req) # XXX put more info here

pkg_resources.VersionConflict: (certifi 2016.2.28 (/usr/local/lib/python2.7/dist-packages), Requirement.parse('certifi==2015.11.20'))

----------------------------------------
Cleaning up...

我正在使用Python 2.7。有谁知道这是什么问题?

2 个答案:

答案 0 :(得分:2)

似乎所有问题都是由于certifi版本冲突

所以尝试从这里下载源代码 https://pypi.python.org/pypi/certifi

从源代码安装

将其解压缩到该文件夹​​并运行此命令

sudo python setup.py  install

它应该有效

和平

答案 1 :(得分:0)

当我已经使用像aptitude或pacman这样的系统包管理器来安装那个包或依赖包时遇到了这种情况 (他们,pip和系统包管理器,彼此不认识,而他们在同一个文件夹中安装包,一些站点包的东西,所以很容易得到一个文件已经存在就像问题一样)

您需要查看哪个是冲突,打开您的python控制台,尝试导入它,并查看module_name的位置。文件,手动删除它(或文件夹)(请先备份问题真的解决了。)

或者只使用pip和系统包管理器来验证哪些已经安装