手动安装 python 依赖项不起作用。为什么?

Manually installing python dependencies doesn't work. Why?

每当我使用 'python setup.py install' 安装我的 python 项目并在 CentOS vagrant box 上调用我的项目时,它工作得很好。依赖关系得到完美解决。

但是,如果我使用 fpm 为我的项目创建 rpm,使用 'rpm -i rpm-file.rpm' 安装 rpm,使用 'pip install -r requirements-file-path.txt' 手动安装依赖项,然后在另一个 CentOS vagrant box 上调用我的项目,我收到以下错误:

  File "/usr/bin/<name-of-my-project>", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 2655, in <module>
    working_set.require(__requires__)
  File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 648, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 546, in resolve
    raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: fabric==1.10.2

使用 'pip uninstall' 卸载依赖项并重新安装它们并不能解决问题。我错过了什么?

刚刚在 Fabric FAQ 页面上找到了答案:http://www.fabfile.org/faq.html/。正在执行:

sudo pip install -U setuptools

然后重新安装依赖项和项目解决了我的问题。但欢迎其他答案。