pip 安装软件时报错

今天用pip安装某些软件(如 lazy==1.1 和 reportlab==3.1.44)时出了好多次这样的问题:

Exception:
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/usr/lib/python2.7/site-packages/pip/commands/install.py", line 324, in run
    requirement_set.prepare_files(finder)
  File "/usr/lib/python2.7/site-packages/pip/req/req_set.py", line 380, in prepare_files
    ignore_dependencies=self.ignore_dependencies))
  File "/usr/lib/python2.7/site-packages/pip/req/req_set.py", line 666, in _prepare_file
    check_dist_requires_python(dist)
  File "/usr/lib/python2.7/site-packages/pip/utils/packaging.py", line 48, in check_dist_requires_python
    feed_parser.feed(metadata)
  File "/usr/lib/python2.7/email/feedparser.py", line 177, in feed
    self._input.push(data)
  File "/usr/lib/python2.7/email/feedparser.py", line 99, in push
    parts = data.splitlines(True)
AttributeError: 'NoneType' object has no attribute 'splitlines'

不知道到底什么原因造成的,当安装另一个版本lazy==1.3时一切正常,但reportlab每个版本都无法安装,报同样的错误。求问。。。

进展?

当我将软件包下载后并用python setup.py install进行安装时,发现可以安装上软件,但安装完成后跟随一个报错:

Traceback (most recent call last):
  File "setup.py", line 30, in <module>
    use_2to3=True,
  File "/usr/lib/python2.7/distutils/core.py", line 151, in setup
    dist.run_commands()
  File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/usr/lib/python2.7/site-packages/setuptools/command/install.py", line 73, in run
    self.do_egg_install()
  File "/usr/lib/python2.7/site-packages/setuptools/command/install.py", line 101, in do_egg_install
    cmd.run()
  File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 360, in run
    self.easy_install(spec, not self.no_deps)
  File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 584, in easy_install
    return self.install_item(None, spec, tmpdir, deps, True)
  File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 636, in install_item
    self.process_distribution(spec, dist, deps)
  File "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 683, in process_distribution
    distreq.project_name, distreq.specs, requirement.extras
TypeError: __init__() takes exactly 2 arguments (4 given)

还是不太明白什么问题。

阅读 4.4k
2 个回答

原来是setuptools惹的祸。。。。
之前安装某个软件时报错说需要setuptools_hg,于是通过命令pip install setuptools_hg进行了安装,之后再进行其他包的安装时,会提示Requirement already satisfied: setuptools in /usr/lib/python2.7/site-packages,以为不关setuptools什么事,其实。。单独安装一次setuptools之后报错就消失了。。。
安装问题是解决了,但还不懂为什么setuptools_hg会造成这样的困扰。。。有知道的大牛请告知。。。。

新手上路,请多包涵

同这个问题 能加q交流下吗 775301251 - -

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题