为什么我的蟒蛇蛋不起作用? - 根本找不到任何发行版

时间:2011-06-09 11:12:41

标签: python distribution pip egg

我使用以下setup.py

分发了我的python包
#!/usr/bin/env python

from setuptools import setup

setup(name='mypackagename',
      version='0.1',
      description='Tool ....',
      author='Peter Smit',
      author_email='lala@lala.com',
      packages=['mypackagename'],
      package_dir={'': 'src'},
      install_requires=['boto'],
      entry_points = dict(console_scripts=[
        'mypackagenamescript = mypackagename.launcher:run',
        ])
      )

我用python setup.py bdist_egg创建了一个鸡蛋。

现在尝试使用pip安装它会出现以下错误:

bin/pip install mypackagename-0.1-py2.6.egg 
Downloading/unpacking mypackagename-0.1-py2.6.egg
  Could not find any downloads that satisfy the requirement mypackagename-0.1-    py2.6.egg
No distributions at all found for mypackagename-0.1-py2.6.egg

将完整登录存储在/home/peter/.pip/pip.log

上面提到的日志文件显示它试图从pypi下载包,它显然不存在。

我做错了什么?我怎样才能安装我的这个鸡蛋加上它的依赖?

3 个答案:

答案 0 :(得分:2)

pip cannot install from eggs

如果您希望您的包在PyPI上可用,则需要register and account there and upload it。然后,您可以简单地说pip install myproject。它将搜索PyPI,找到它,下载并安装它。

如果您已准备好setup.py并希望在本地安装您的应用,那么您需要做的就是说python setup.py install。您不需要使用pip或easy_install。

hitchhikers guide to packaging包含所有这些内容的详细信息。它应该清楚明白。

答案 1 :(得分:2)

为什么不使用setuptools easy_install

easy_install mypackagename-0.1-py2.6.egg 

如果你想使用那种方式的鸡蛋。

答案 2 :(得分:2)

Pip无法安装鸡蛋。恕我直言,这是一个严重缺乏。我建议你试试Pyg。只需下载get-pyg.py脚本并执行它:

$ curl -O https://raw.github.com/rubik/pyg/master/get-pyg.py
$ python get-pyg.py
Retrieving archive from ... etc.

注意:作为替代方案,您可以通过easy_install或pip进行安装。

然后你可以使用它:

$ pyg install mypackagename-0.1-py2.6.egg

Pyg也支持virtualenv。

魔方