可以使用pip搜索PyPI包,但无法安装。 easy_install的正常工作
我运行到哪里执行pip install python-sdk-auth
一个问题,我得到这个错误:可以使用pip搜索PyPI包,但无法安装。 easy_install的正常工作
Could not find a version that satisfies the requirement python-sdk-auth (from versions:) No matching distribution found for python-sdk-auth
这个包始建运行:
python setup.py bdist_egg --exclude-source-files
到只包含.pyc
文件 并通过此上传twine
:
twine upload dist/<packagename>.egg
这里有更多的观察:
- 我能
pip search python-sdk-auth
和包装似乎是存在于包目录。 - 我可以做
easy_install python-sdk-auth
,并且软件包将成功安装。 - 我正在运行python v2.7。
看来我可以通过easy_install
来做到这一点,但不是pip
。我的主要目的是让这个软件包成为另一个软件包的依赖关系(通过setup.py
中的install_requires
参数指定,但似乎甚至通过pip install
在virtualenv
环境中安装此程序会引发上述错误。谢谢!
的PyPI上可用的软件包唯一的分布是一个鸡蛋,由setuptools的使用(并因此easy_install
),而不是点子旧的格式。皮普只能安装从sdist
取得源代码分发包(每包裹应该有)和从轮子(替换蛋格式,这应该是首选蛋99.9999%的时间)。建立&上载一个(或更好,两个)这些文件到PyPI,使您的包在通过点可以实现。
好酷。作为后续:有没有办法通过'bdist_wheel'将这个包分发为.pyc文件?是否有CLI选项? ('bdist_egg'有--'exclude-source-files')我似乎无法在文档上找到一个。或者我需要像“Cython”这样的东西?我知道这不被推荐,但我认为它现在“足够好”了。 – tzhenghao
@tzhenghao:您项目的元数据表示您将根据MIT许可证发布它,这意味着它是开源的。如果这个项目是真正开源的,那么应该没有理由不分发源文件。如果你坚持要保守源代码的秘密,我建议不要试图通过PyPI分发它,而我对你的努力的进一步想法会违反SO的“变得很好”政策。 – jwodder
是的,我完全错过了。我现在就改变它 – tzhenghao
跟进:这都与使用不同设备的格式,当它最初被上传到PyPI将PIP VS easy_install的呢? https://packaging.python.org/pip_easy_install/请参阅:比较表中的安装格式。 – tzhenghao